如何在VB.NET中单击它时取消选择所选的DataGridViewRow?

时间:2013-08-22 14:34:43

标签: .net vb.net datagridview

我正在寻找一种在用户点击它时取消选择所选DataGridViewRow的方法。我试图摆弄DataGridView类的各种单击事件,但问题是SelectionChanged在这些之前被触发,这会在用户单击未选中的行时导致明显的意外行为。

我如何获得我想要的行为?

2 个答案:

答案 0 :(得分:1)

听起来您正在尝试使用alter standard windows选择多个对象行为。即,允许多选,然后通过单击要取消选择的所选行来取消选择给定行。由于数据网格会在尝试基于标准事件处理执行此操作时与您斗争,您可以处理click事件,并使用鼠标事件来确定它们点击的位置等等......但这很麻烦且很脆弱。 / p>

我建议您向用户教授标准窗口选择行为,或者添加一个“selected”列,其中包含一个复选框并解释复选框值的“真实性”专栏进一步处理。

答案 1 :(得分:0)

在selectionchanged事件中设置DataGrid.SelectedIndex = -1,如果之前已选中(此处未包含该逻辑)。