2010-10-12 84 views
3

在我当前的项目中,我使用了几个文本框控件,其内容由来自数据库的对象填充。该对象使用验证来验证文本的正确插入。如何更改WPF中绑定选项的默认值?

当我想显示验证错误(即文本许多字符),我必须在下面的行添加一些绑定选项的文本属性,如:

<TextBox Text="{Binding Mode=TwoWay, Path=Description, ValidatesOnDataErrors=True, NotifyOnValidationError=True, UpdateSourceTrigger=PropertyChanged}" /> 

是否有可能创造一个模板或样式或任何改变最后三个选项(ValidatesOnDataErrors,NotifyOnValidationError,UpdateSourceTrigger)的默认值为上面代码中的值?文本框控件应该看起来像那么follwing:

<TextBox Text="{Binding Mode=TwoWay, Path=Description}" /> 
+0

可能的重复http://stackoverflow.com/questions/3902470/question-about-data-template-or-style-in-wpf-xaml – 2010-10-12 14:40:05

回答

3

鉴于这是WPF(不是Silverlight的),我想你有一个选项:自定义标记扩展。这样的扩展可以构建并返回一个Binding,只要你喜欢,而且会导致这样一个简单的使用模式:

<TextBox Text="{ValidatedBinding Description}"/> 

有关实现自定义标记扩展的更多信息,请参阅here

+0

如果你从一个标记扩展返回一个绑定,它不会表现如预期的那样,但您可以直接从Binding继承并在构造函数中设置属性。 – Kris 2010-10-12 20:33:52

+0

这只是我需要的帮助。它像一个魅力。我创建了一个新类,并从Binding继承,现在它可以工作。非常感谢。 :) – Bastian 2010-10-13 05:49:31