当我第一次来到窗口时,为什么它是一个带有用户控件和组合框的表单,设置为空白。我可以单击取消而没有任何问题,窗口关闭。但是,如果我触摸组合框,然后将其留空,然后尝试单击取消取消事件不会发射?
您实际需要的只是
e.Cancel = False;
在您的FormClosing事件中。
i必须使用container.autovalidate = .enableAbleAbleAllowFocusChange
我遇到了相同的问题,但随后我通过
解决了它- 将按钮的诉讼属性设置为false。
- 重新设置表单上的所有控件。
关闭表格。
while (Controls.Count > 0) { Controls[0].Dispose(); } this.Close();
我将此代码添加到button_click()事件以及from_closing事件中。问候,kshitij thube
杆的答案导致解决方案。如果表单(错误提供错误的容器)AutoValidate
-property设置为EnableAllowFoucsChange
,则处理按钮事件,并且在Click
-中,现在可以检查表格是否有无效的孩子:
Private Sub Button2_Click(sender As System.Object, e As System.EventArgs) Handles Button2.Click
If Not ValidateChildren() Then Exit Sub
End sub