在WPF中使用IDataErrorInfo
和样式我想要创建表单,我可以在验证数据时为最终用户提供三种不同的状态
使场景更清晰
1)我旁边有文本框我有图标,它为最终用户提供了什么样的输入文本框期望 - 初始状态带有信息图标
2)一旦用户输入数据,它就会对其进行验证并确定它是否有效 - 大多数情况下,它会显示十字(X)图标,表示无效数据
3)因为它在UpdateSourceTrigger="PropertyChanged"
上验证,它会在验证后立即将交叉图标变为绿色复选标记
即
[ ] i (tooltip- Any valid user name )
[Ga ] X (tooltip- Invalid user name. Must be 5 char long)
[Gaurav ] * (it will show only correct icon, meaning valid value)
我如何使用IDataErrorInfo
和Style实现这一点,我尝试这样做但是只要我的表单被加载,它就会使所有数据无效并在第一次显示交叉图标。我想为三种状态显示不同的工具提示和不同的图标(Initial info
,Invalid data
,Valid data
)
答案 0 :(得分:1)
IDataErrorInfo不包含任何表示三种状态的方法。它只知道“错误”和“没有错误”。
最佳解决方案可能是通过以下方式绕过IDataErrorInfo的使用:
您可能还必须为每个字段的工具提示文本创建属性。
答案 1 :(得分:0)
你可以在这里找到一个很好的例子WPF Apps With The Model-View-ViewModel Design Pattern