我正在尝试从 DataGridView 中删除一行
我使用两种类型的指令
A
VouchersDGV.Rows.Clear()
B
If Not DGV.Rows(RowIndex).IsNewRow Then
DGV.Rows.RemoveAt(RowIndex)
DGV.Refresh()
End If
两人都从里面
VouchersDGV_RowValidating
Event
我还使用 RaiseEvent 从另一个事件处理程序运行它。
最后一个事件处理程序,我使用它来从行内部转义,以防输入错误或......什么,并将数据网格带到其初始位置
该活动是
Private Sub Supplier_prod_EscapeOnFirstRowPressed() Handles Me.EscapeOnFirstRowPressed
要删除我在上面的 EventHandler 中输入的行
VouchersDGV_RowValidating
EventHandler 和我收回同样的错误
DGV.Rows.RemoveAt(0) {"Operation cannot be performed in this event handler."}
就我个人而言,我无法理解为什么会发生这种情况以及我如何给出解决方案
有人知道这个错误吗?
在验证时,它依赖于特定的状态,当它只要求您验证某些内容时,它显然不高兴您开始更改行。我不能说我责怪它;每次事件发生后都必须重新验证场景会变得……令人困惑;更好地阻止变化。
您可以在另一个回调的计时器上将项目排队等待删除,或者可能有一种在验证期间说“不”的机制。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)