为啥我的验证事件没有在 C# 中触发?
Posted
技术标签:
【中文标题】为啥我的验证事件没有在 C# 中触发?【英文标题】:Why is my validating event not firing in C#?为什么我的验证事件没有在 C# 中触发? 【发布时间】:2009-02-17 20:39:43 【问题描述】:我有一个动态创建的表单。它是一个 winForms 应用程序。
这个表单只是一个菜单和一系列文本框和标签。在本示例中,您可以忽略标签。
我的问题是:当我在文本框中编辑内容时,然后单击菜单发出“保存”,最后一个文本框中的文本仍未发出其“验证”方法。这似乎是因为控件仍然具有焦点,并且菜单位于单独的线程中。
当用户单击“保存”时,如何强制触发验证事件?我不知道用户在哪个文本框上(如果有的话),并且在“保存”功能中发出 SomeKnownControl.Focus();
似乎没有帮助。
【问题讨论】:
【参考方案1】:我以前吃过这个。在您的表格中:
private void SaveButtonClick(...)
if (this.ValidateChildren())
// do save
ValidateChildren on MSDN
【讨论】:
没问题...它也难倒了我一段时间。 嗯...我认为问题在于它会在所有子控件上触发 Validating 事件,而不仅仅是具有焦点的那个。以上是关于为啥我的验证事件没有在 C# 中触发?的主要内容,如果未能解决你的问题,请参考以下文章