我在快捷键设置(ALT + S)的表单上有一个保存按钮。
在我datagrid
活动的cellvalidated
中,我确定是否可以为用户启用或停用此按钮。
类似于事件触发命令的旧VB6问题....
如果该按钮当前已启用,但用户将无效数据放入datagrid单元格中。如果他们单击按钮,单元格验证事件将触发,禁用按钮 - 没有问题。相反,当他们输入错误数据并执行ALT + S时,单元格验证事件会触发,但在这种情况下,Button_Click
事件仍然会触发。
有什么方法可以阻止这种情况吗?基本上如果使用ALT +,我不希望激活 Click 事件。
答案 0 :(得分:1)
如果其他一切都失败了 - 有这种方法(伪代码)
Class Form
private _validated as Boolean
sub Cell_validate
' validate here and set
_validated = true/false
end sub
sub Button_Click
If not _validated then Return
' have your save logic here
end sub
End class
这样,当按钮被禁用时,您将保护代码不会执行Button_Click
的实际逻辑。