7

我已经知道可以从 IValueConverter 实现返回的Binding.DoNothing以表示不应发生其他操作。

但是,我找不到参考或文档很好地总结了其他特殊值是什么 - 例如返回后备值。这些是什么?

4

1 回答 1

16

Binding.DoNothing您从值转换器主动返回的对象实例;它指示绑定引擎根本不更新目标属性的值。这是 Josh Smith 的一个很好的例子,说明你可以用它做什么。

FallbackValue是您在绑定上设置的属性;它允许您在以下情况下指定要应用于目标属性的值:

  • 无法解析绑定源(例如错误的绑定路径),或者
  • 绑定属性值等于DependencyProperty.UnsetValue,或
  • 用于绑定的值转换器引发异常,或
  • 用于绑定返回的值转换器DependencyProperty.UnsetValue,或
  • 绑定管道生成的值对目标属性无效(例如错误类型)

TargetNullValue也是您在绑定上设置的属性;如果源属性的值为 ,它允许您指定要应用于目标属性的值null。例如,如果将文本框绑定到字符串属性TargetNullValue,如果源字符串为null.

于 2012-04-30T14:10:11.570 回答