【问题标题】:Why is .CausesValidation set to True by Default for Buttons?为什么按钮的 .CausesValidation 默认设置为 True?
【发布时间】:2009-08-21 19:33:50
【问题描述】:

在 .NET WinForms 应用程序中创建按钮实例时,.CausesValidation 属性设置为 True。为什么假定所有按钮都会引发验证事件?这是否意味着,默认情况下,只要按钮获得焦点,表单上具有 _Validating 事件的所有控件都会调用该事件?

获得焦点在按钮上调用验证事件是不是有点?特别是默认情况下? click 按钮似乎是更合适的默认验证时间。

我问是因为我想确定我正确理解 WinForms 验证模式。

【问题讨论】:

    标签: c# winforms validation


    【解决方案1】:

    我想这是两种邪恶中最安全的一种。通常按钮处理数据;这样一来,如果您什么都不做,则默认情况下您的数据已经过验证,如果您实际上不希望它验证,那将非常明显(因为它不起作用)。

    与替代方案相反 - 您什么都不做,您的按钮可以静默工作,成功地对无效数据执行操作,您不会注意到,因为它很微妙。

    第一个可能更安全,即使它确实会引起一点刺激。

    【讨论】:

      猜你喜欢
      • 2019-01-06
      • 2021-08-14
      • 1970-01-01
      • 2011-01-03
      • 1970-01-01
      • 1970-01-01
      • 2020-05-05
      • 1970-01-01
      • 2016-07-14
      相关资源
      最近更新 更多