WPF:在Visual树下传播验证错误
-
17-09-2020 - |
题
我经常在我的应用中使用并重新使用UserControl。
例如,如果用户应该输入整数号码,则我有一个名为“Integereditor”的UserControl,它具有标题的标签,用户输入的文本框,以及单位的标签(英寸,秒,等等......)。
我的用户控件已经有一个验证规则,即我调用“integervalidationrule”,如果用户输入是整数的控制。
我有一个与该验证规则相关联的样式,该规则更改控制背景并在工具提示中添加错误消息。
有时,我在UI中使用这些基本控件,但我想添加其他验证规则,例如“整数必须大于1023”,具有特殊错误消息,因为“1024下的UDP端口保留UDP端口”,请选择更高的数字“
您是否知道我可以在其他地方添加这些验证规则,但它仍然会触发我的控件上的风格?我考虑过在Visual树上传播验证错误,但在网上发现了这一点。
谢谢你的答案,
a.jeanrichard
解决方案
嗯......您可以响应路由的“验证失败”事件,但是,它比具有应用程序级视图模型的难度IMO更加困难,这负责不同视图之间的协调验证。
不隶属于 StackOverflow