2

dataGridView1私は、データ テーブルとバインドされているデータ グリッド ビューを持っていますdt1

データ テーブルdt1には次のデータがあります。

name | status
-----+-------
abc  |   0
abd  |   1
abc  |   0
abc  |   1
abc  |   1

チェックボックスを Data gridview に配置していますが、ステータス = 1 のチェックボックスのデフォルト値をチェックしたいです。

DataGridViewCheckBoxColumn checkColumn = new DataGridViewCheckBoxColumn();
checkColumn.Name = "X";
checkColumn.HeaderText = "X";

dataGridView1.Columns.Add(checkColumn);

for (int x = 0; x < countSubCategory; x++)
{
    if (dt1.Rows[x].ItemArray[1].ToString() == "1")
    {
          // here I want to check the checkbox but I don't know what to write here
          checkColumn.Checked= true;
    }

    else { 
        checkColumn.Value = false; 
    }
} 
4

1 に答える 1

1

代わりは

checkColumn.Checked= true;

書きます

DataGridName[x][position_of_checkBox_column].Value = true;

ただし、UI ではなく、データを操作する方が適切です。

DataTable に列式を追加できます。

dt1.Columns.Add(new DataColumn("X", typeof(bool), "status = 1"));

この1行で、質問のすべてのコードが置き換えられます!


場合によっては、より単純で効果的な方法として、SQL ステートメントを変更します。

その代わり

SELECT id, status

書く

SELECT id, IIF(status = 1, true, false) AS statusBool
于 2013-12-18T15:12:18.700 に答える