取消选择datagridview中的所有行

Mar*_* Ch 20 c# datagridview rows selection winforms

我有两个datagridviews,当我点击其中一个时,我想在第二个datagridview中取消选择所有选择,我试过这个,但没有任何作用:

firstItemsDataGridView.ClearSelection();
firstItemsDataGridView.CurrentCell = null;
Run Code Online (Sandbox Code Playgroud)

不工作,

firstItemsDataGridView.ClearSelection();
if (firstItemsDataGridView.Rows.Count > 0)
    firstItemsDataGridView[1, 0].Selected = true;
firstItemsDataGridView.CurrentCell = null;
firstItemsDataGridView.ClearSelection();
foreach (DataGridViewRow item in firstItemsDataGridView.Rows) {
    item.Selected = false;

    foreach (DataGridViewCell itemCell in firstItemsDataGridView.Columns) {
        itemCell.Selected = false;
    }
}
Run Code Online (Sandbox Code Playgroud)

不工作,

firstItemsDataGridView.Rows[0,-1].Selected = true;
Run Code Online (Sandbox Code Playgroud)

不工作.

我已经将选择模式设置为全行选择,我不知道如何实现我的目标.
非常感谢!

Mit*_*tzi 54

dataGridView1.ClearSelection();
Run Code Online (Sandbox Code Playgroud)

应该管用.也许你有自动选择触发行的代码?

  • 不要太快打电话! (3认同)

小智 6

NullSkull 的一个答案为我解决了这个问题,即 datagridview 控件的第 0 行、第 0 列的单元格始终在表单加载时被选中,并且尽管在表单的构造函数方法中调用了 ClearSelection,但无法取消选择。我只需在 Form_Load 事件中调用 ClearSelection 即可。 http://www.nullskull.com/q/10066166/how-to-deselect-the-first-row-when-the-form-i-loaded-in-datagridview-in-windows-application.aspx