Каковы специальные значения механизма привязки WPF при преобразовании значений?

Я уже знаю о Binding.DoNothing который можно вернуть из реализации IValueConverter, чтобы показать, что никакая другая операция не должна выполняться.

Однако я не могу найти ссылку или документацию, в которой хорошо подытожены другие специальные значения, такие как возврат резервного значения. Кто они такие?


person Jean Hominal    schedule 30.04.2012    source источник
comment
Откат происходит, если привязка изначально не работает или, возможно, при привязке возникает какое-то исключение.   -  person H.B.    schedule 30.04.2012
comment
лучший способ узнать о таких значениях — прочитать статьи о привязке. и классы BindingBase. Все, что вы можете использовать, указано там   -  person koshdim    schedule 30.04.2012


Ответы (1)


Binding.DoNothing — это экземпляр объекта, который < em>вы активно возвращаетесь из конвертера значений; он указывает механизму привязки вообще не обновлять значение целевого свойства. Вот хороший пример от Джоша Смита о том, для чего вы можете это использовать.

FallbackValue — это свойство, которое вы устанавливаете на привязках; он позволяет указать значение, которое будет применяться к целевому свойству, если:

  • источник привязки не может быть разрешен (например, неверный путь привязки) или
  • значение свойства привязки равно DependencyProperty.UnsetValue, или
  • преобразователь значений, используемый для привязки, выдает исключение, или
  • преобразователь значений, используемый для привязки, возвращает DependencyProperty.UnsetValue или
  • значение, созданное конвейером привязки, недопустимо для целевого свойства (например, неправильный тип)

TargetNullValue также является свойством, которое вы устанавливаете на привязках; он позволяет указать значение, которое будет применяться к целевому свойству, если значение исходного свойства равно null. Например, если вы привязываете текстовое поле к строке, свойство TargetNullValue позволяет вам выбрать, что будет отображаться в текстовом поле, если исходная строка — null.

person Jon    schedule 30.04.2012
comment
Ах! DependencyProperty.UnsetValue. Это был тот, кого я искал. - person Jean Hominal; 02.05.2012