Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
WPF:以优雅的方式清除所有错误消息_Wpf_Validation_User Controls - Fatal编程技术网

WPF:以优雅的方式清除所有错误消息

WPF:以优雅的方式清除所有错误消息,wpf,validation,user-controls,Wpf,Validation,User Controls,我完全是WPF的初学者 我制作了一个用户控件“labeledTextbox”,它包含一个标签、一个文本框和一个用于错误消息的文本块 当用户点击submit按钮时,我调用SomeValidationMethod()来验证用户输入。当其中一个文本框包含无效数据时,我将errormessage传递给相应的usercontrol,然后usercontrol将其显示给用户 我来自网络世界,每次回发都会刷新页面,这意味着您只需担心在发生错误时设置错误消息。但是在WPF中,当错误被纠正时,您还必须清除错误消息

我完全是WPF的初学者

我制作了一个用户控件“labeledTextbox”,它包含一个标签、一个文本框和一个用于错误消息的文本块

当用户点击submit按钮时,我调用SomeValidationMethod()来验证用户输入。当其中一个文本框包含无效数据时,我将errormessage传递给相应的usercontrol,然后usercontrol将其显示给用户

我来自网络世界,每次回发都会刷新页面,这意味着您只需担心在发生错误时设置错误消息。但是在WPF中,当错误被纠正时,您还必须清除错误消息

我正在寻找一种在WPF中以某种方式清除页面上所有错误消息的方法。然后我可以在SomeValidationMethod()的顶部调用SomeClearAllErrorMethod()

所以我想我需要以下几点:

  • 获取页面上labeledTextbox用户控件集合的一种方法
  • 一种迭代集合的方法,这样我就可以为每个labeledTextbox用户控件将ErrorMessage属性设置为null
但是,我也在想,是否有一种更优雅、最佳实践的方式来完成我想要完成的任务


感谢您提供的所有信息

哦,亲爱的,您正在以一种非常非WPF的方式进行此操作(尽管对于正在学习WPF的人来说并不典型,所以请不要感到难过)-无论何时您最终编写了一个“updatexxx”函数,其中您正在处理控件的属性,这通常意味着您应该改用数据绑定。在您的特定情况下,您可能希望查看WPF验证()。

如果您发布了一些代码,也许我可以帮助您找到一个更优雅的解决方案。如果您有许多错误消息,您不想一次清除它们的内容,那么您的迭代方法看起来不错。不过,我有一个问题。您的页面中肯定有其他不包含错误消息的标签。您希望如何区分它们和错误消息?