【问题标题】:windows form validation issues (.net2.0 )windows 表单验证问题 (.net2.0 )
【发布时间】:2011-09-27 12:28:32
【问题描述】:

我需要一些有关 Windows 表单验证的帮助:

  1. 使用标准表单关闭按钮 (X) 关闭表单会触发对所有控件的验证。 有没有办法在使用这个按钮关闭表单时抑制它,只有在按下我自己的按钮时才强制它?
  2. 当我以编程方式更改文本(值)时,不会调用文本框验证(可能是其他控件,我只测试了文本框)。如果我想稍后在表单关闭之前触发验证,我需要直接在文本框中输入文本。如何告诉表单某些控件需要验证(但不是立即触发)?

谢谢。

编辑: (1) 已解决,使用this 答案。 (2) 现在,在我将 AutoValidate 属性设置为 false 并将 ValidateChildren() 添加到我的按钮后,只有 1 个控件正在使用其当前值进行验证,所有其他控件的值都恢复为从 DataSource 对象绑定到它们的值。我在 Validating 事件中检查了它 - 只有第一个控件验证保持其当前值,在此验证完成后,其他控件的值将替换为 DataSource 对象中的值。我不明白为什么。有什么线索吗?

【问题讨论】:

    标签: .net-2.0 validation c#-2.0


    【解决方案1】:

    试试这个,也许它可以帮助你。 (1)

    在 Forms Load 事件中,您可以放置 this.ControlBox = 假;。这将隐藏您的 X 按钮和顶部的其他按钮。 Form 有一个 Form1_FormClosing 事件。在那个事件中,您可以调用您需要的触发器。在表单上放置一个按钮,然后在 button_Click 事件中键入 this.Close()。

    【讨论】:

      猜你喜欢
      • 2014-08-16
      • 2011-07-17
      • 2013-04-13
      • 2015-10-09
      • 2015-12-09
      • 2017-08-29
      • 2011-06-21
      • 2011-11-05
      相关资源
      最近更新 更多