当我尝试使用窗口关闭按钮(X)关闭表单时,有什么方法可以关闭该死的错误提供程序。它会触发验证,用户必须先填写所有字段才能关闭表单。这将是一个可用性问题,因为许多人倾向于使用 (X) 按钮关闭表单。
我放置了一个取消按钮,导致验证为 false,并且它还会触发验证。
我发现有人说如果你使用 Form.Close() 函数验证就会运行...... 我怎样才能克服这个烦人的功能。
我有一个 MDI 结构并使用显示表单
CreateExam.MdiParent = Me
CreateExam.Show()
在 mdi 父级的菜单项上单击
并将其设置为验证
Private Sub TextBox1_Validating(ByVal sender As System.Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles TextBox1.Validating
If String.IsNullOrEmpty(TextBox1.Text) Then
Err.SetError(TextBox1, "required")
e.Cancel = True
End If
If TextBox1.Text.Contains("'") Then
Err.SetError(TextBox1, "Invalid Char")
e.Cancel = True
End If
End Sub
非常感谢任何帮助。 谷歌搜索仅显示用户在使用命令按钮作为关闭按钮时遇到问题的结果,这在我的情况下也导致了问题
最佳答案
ValidateChildren() 方法阻止表单关闭。将此代码粘贴到您的表单中以修复该问题:
protected override void OnFormClosing(FormClosingEventArgs e) {
e.Cancel = false;
}
关于vb.net - Errorprovider 在使用 Windows 关闭按钮时显示错误 (X),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2481706/