通用号码验证规则?

时间:2013-12-21 13:03:29

标签: wpf validation validationrule

当使用绑定到不同数字类型的TextBox控件(例如,uint,int,double等)时,输入不兼容的值会产生用户不友好的错误消息。

例如,使用绑定到uint并输入“-7”的TextBox会产生错误消息“Value” - “无法转换”。

所以我想创建一个验证规则,生成更多用户友好的错误消息。

问题是验证覆盖不提供有关类型绑定的上下文信息。这意味着我必须为每种类型创建一个不同的规则,然后确保我在xaml中使用正确的规则,这太可怕了。

我发现获取有关绑定类型的信息的唯一方法是将ValidationStep设置为UpdatedValue,但这显然没有帮助,因为此时值已经更新,如果它已经更新,甚至都不会被调用格式不正确。

所以我想知道如何在它实际设置在viewmodel之前验证一个值,但是有关于类型本身的上下文信息,所以我可以使用反射来获取诸如Min和Max等的值

如果可能的话,我也想避免使用自定义TextBox方法,因为我认为这个想法也可以在其他地方使用

0 个答案:

没有答案