0

所以,我有一个用户控件,它只是一个具有特殊格式规则的文本框(我不只是使用 MaskedTextBox 是有原因的......你知道......明智的解决方案)。

无论如何,当用户输入无效数据时,他们无法使用鼠标单击关闭,因为 TextBox_Validating 事件按原样取消,并且控件在输入可接受的输入之前无法失去焦点。但是,如果他们尝试关闭控件,则会触发“e.Cancel = True”语句(我通过使用断点知道这一点),但 WinForms 仍然允许他们关闭其他控件,从而在文本框。

我缺少什么来使标签行为适当?

4

1 回答 1

0

从 .Net Framework 2.0 版开始,您可以使用该Form.AutoValidate属性来修改验证行为。有关更多信息,请参阅文档

我刚刚测试了选项卡问题,当验证失败时(例如取消 = true),它不允许我使用选项卡。当验证成功时(e.Cancel = false),一切都很好。

于 2010-02-25T20:12:36.000 回答