0

私はデータグリッドビューを持っています。ブール型の 2 つの列があります。今私がやりたいことは、1つのチェックボックスをクリックすると、同じ行の他のチェックボックスがオフになるはずです。つまり、一度に 1 つのチェック ボックスのみを特定の行で選択する必要があります。ユーザーが 2 つのチェック ボックスを同時に選択できないようにする必要があります。

どうすればこれを達成できますか? cellcontentclick および cellcontentChanged イベントを使用してみました。何も機能しません。

任意の入力??

4

2 に答える 2

0

DataGrid_CellEditEndingを使用する

boolean trueその中で DataSource を反復処理し、チェックされた列 ( ) が見つかった場合は、チェックを外します( boolean false)。それがあなたを助けることを願っています

private void dataGridView1_CellEndEdit(object sender, DataGridViewCellEventArgs e)
    {
         foreach (var Item in dataGridView1.ItemsSource)
         {
             if(Item.isChecked) 
                 Item.isChecked = false;
         }
    if (Convert.ToBoolean(dataGridView1.Rows[e.RowIndex].Cells["Column1"].Value))
        dataGridView1.Rows[e.RowIndex].Cells["Column2"].Value = false;
    }
于 2013-07-02T05:26:29.633 に答える