【问题标题】:How can i change the default values of the Binding Option in WPF?如何更改 WPF 中绑定选项的默认值?
【发布时间】:2010-10-12 14:21:43
【问题描述】:

在我当前的项目中,我使用了几个文本框控件,其内容由来自数据库的对象填充。该对象使用验证来验证文本的正确插入。

当我想显示验证错误(即文本有很多字符)时,我必须向 text 属性添加一些绑定选项,如下行所示:

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

是否可以创建模板或样式或其他任何东西来将最后三个选项(ValidatesOnDataErrors、NotifyOnValidationError、UpdateSourceTrigger)的默认值更改为上面代码中的值?文本框控件应如下所示:

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

【问题讨论】:

标签: c# wpf templates binding styles


【解决方案1】:

鉴于这是 WPF(不是 Silverlight),我认为您确实有一个选择:自定义标记扩展。这样的扩展可以根据你的喜好构造和返回Binding,并且会产生一个简单的使用模式,例如:

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

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

【讨论】:

  • 如果你从一个标记扩展返回一个绑定,它的行为不会像预期的那样,但你可以直接从 Binding 继承并在构造函数中设置属性。
  • 这正是我需要的帮助。它就像一个魅力。我创建了一个新类并从 Binding 继承它,现在它可以工作了。非常感谢。 :)
猜你喜欢
  • 2011-01-15
  • 1970-01-01
  • 2010-11-08
  • 2011-03-07
  • 1970-01-01
  • 2011-07-21
  • 1970-01-01
  • 2018-11-25
相关资源
最近更新 更多