C# 检查是否为datetimepicker输入了值?

C# 检查是否为datetimepicker输入了值?,c#,winforms,visual-studio-2008,.net-3.5,C#,Winforms,Visual Studio 2008,.net 3.5,如何验证datetimepicker控件中是否选择了值 控件绑定到BindingNavigator,因此当单击“保存”按钮时,我希望确保已选择日期?侦听ValueChanged事件,然后在其中设置一个布尔标志。我宁愿验证该值是否有意义(从系统的角度来看),如果它是实际输入的,则不会。最简单的方法是创建BindingNagivator的子类,它允许您订阅验证事件,并处理验证,从而防止移动 (ValidatingBindingNavigator)中显示了一个简单的实现 这允许您在允许移动更改或保存之

如何验证datetimepicker控件中是否选择了值


控件绑定到BindingNavigator,因此当单击“保存”按钮时,我希望确保已选择日期?

侦听
ValueChanged
事件,然后在其中设置一个布尔标志。

我宁愿验证该值是否有意义(从系统的角度来看),如果它是实际输入的,则不会。最简单的方法是创建BindingNagivator的子类,它允许您订阅验证事件,并处理验证,从而防止移动

(ValidatingBindingNavigator)中显示了一个简单的实现


这允许您在允许移动更改或保存之前进行验证。

这是否也会阻止(+)add new创建新记录(在表单上),除非验证为真?是。它覆盖任何按钮按下,因为它使用WndProc来处理左按钮按下。基本上,除非取消验证,否则所有按钮都不起作用。这是一个简单的处理方法。(在同一篇文章中还有其他选择,但它们显示禁用按钮,这需要更多的工作)。好的,很酷。目标是将其与错误提供程序结合使用,因此如果用户忘记输入字段或输入有效数据,然后单击“保存”或“新建”,则错误将显示在相关控件旁边。我将尝试实现这一点,并给出结果。谢谢。那么这应该很有效。这将阻止用户移动-如果This.Errors.Count>0或This.Error!=string.Empty。