C#不允许DataGridViewCheckBoxColumn删除选择

时间:2016-10-18 14:12:38

标签: c# datagridview selection

我有一个DataGridView,第一列是DataGridViewCheckBoxColumn。 我将SelectionMode设置为FullRowSelect。 我将MultiSelect设置为True。

我希望能够选择多行,然后检查第一列。这将选中或取消选中当前所选的所有复选框;但是,当我这样做时,选择将被删除,只有我点击其复选框的行才会被选中。

换句话说,我不想在单击复选框单元格时删除选择。

2 个答案:

答案 0 :(得分:1)

确保将EditMode设置为EditProgrammatically

Access Token

答案 1 :(得分:0)

我不熟悉DataGridView,因为我只是使用DevExpress-Framework,但我希望你必须在点击checkBox时保存选择。稍后您可以恢复选择。

List<DataRow> tempSelection = new List<DataRow>();
foreach (DataRow row in dataGridView.SelectedRows)
{
  tempSelection.Add(row);
}

//click your checkbox and do some stuff

foreach (DataRow row in tempSelection)
{
   row.Selected = true;
}

但是您认为单击一个复选框并检查多个值是否直观?也许使用带有Button“CheckSelection”的contextMenu会更直观。想一想;)