0

以下のリクエストを実装しています。

  1. ユーザーが ComboBox 内の項目を選択します。
  2. SelectedIndexChangedイベント処理コードは、ComboBox の選択された値に従って一部のセルをフォーマットします。しかし、うまくいきません。

.

void Combobox1_OnSelectedIndexChanged(object sender, ...)
{
    foreach (DataGridViewRow row in GridView1.Rows)
    {
        var c = GridView1.Columns.Count;
        for (int i = 0; i < c; i++)
        {
            if (...some condition using selected value...) 
            {
                 row.Cells[i].Style.BackColor = Color.Green;
                 row.Cells[i].ToolTipText = "test";
            }
        }
    }

質問: イベント CellFormatting、.. イベントに追加する必要がありますか? SelectedIndexChangedただし、アルゴリズムはコンボボックスの?のイベントに依存します。

4

2 に答える 2

0

一度CellFormattingイベントでこれを試してください..

Foreach ループ

   DataGridViewTextBoxCell txt = new DataGridViewTextBoxCell();
   txt.Value = row.Cells[i].Value
   txt.ToolTipText = "test";
   txt.BackColor = Color.Green;
   row.Cells[i] = txt;
于 2012-11-18T03:15:56.377 に答える
0
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
        {

            var c = dataGridView1.Columns.Count;
             foreach (DataGridViewRow row in this.dataGridView1.Rows)
                {
                    if (comboBox1.SelectedValue==1){
                                row.Cells[0].Style.BackColor = Color.Green;
                                row.Cells[0].ToolTipText = "test";
                        }

            else
            {
                        row.Cells[0].Style.BackColor = Color.Blue;
                        row.Cells[0].ToolTipText = "test";
                }
            }
    }

Thanks
于 2012-11-18T07:28:11.507 に答える