Binding.UpdateSourceTrigger Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает или задает значение, определяющее время обновления источника привязки для двусторонних привязок.
public:
property UpdateSourceTrigger UpdateSourceTrigger { UpdateSourceTrigger get(); void set(UpdateSourceTrigger value); };
UpdateSourceTrigger UpdateSourceTrigger();
void UpdateSourceTrigger(UpdateSourceTrigger value);
public UpdateSourceTrigger UpdateSourceTrigger { get; set; }
var updateSourceTrigger = binding.updateSourceTrigger;
binding.updateSourceTrigger = updateSourceTrigger;
Public Property UpdateSourceTrigger As UpdateSourceTrigger
<Binding UpdateSourceTrigger="updateSourceTriggerMemberName"/>
Значение свойства
Одно из значений UpdateSourceTrigger . Значение по умолчанию — , которое оценивается Default
как PropertyChanged
поведение обновления для большинства свойств зависимостей, но оценивается как LostFocus
для TextBox.Text
свойства .
Комментарии
Поведение по умолчанию для большинства свойств зависимостей — PropertyChanged
. Однако по умолчанию для свойства TextBox.Text используется LostFocus
поведение . Для привязки к TextBox.Text
можно изменить следующим UpdateSourceTrigger
образом:
<TextBox Text="{x:Bind MyProperty, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" />
Однако это не повлияет на TextBox
в шаблоне элемента управления другого элемента управления, например NumberBox. Например, этот UpdateSourceTrigger
параметр не действует.
<!-- This UpdateSourceTrigger setting has no effect. -->
<NumberBox Text="{x:Bind MyProperty, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>
Другой вариант поведения UpdateSourceTrigger заключается в том, чтобы задать значение Explicit
. Если двусторонняя привязка имеет значение UpdateSourceTrigger как Explicit
, необходимо явно вызвать UpdateSource в соответствующем BindingExpression , чтобы привести к обновлению источника данных измененными целевыми значениями. Используйте FrameworkElement.GetBindingExpression , чтобы получить BindingExpression из объекта, в котором существует свойство Привязка к зависимостям и эта привязка является двусторонней привязкой с UpdateSourceTrigger="Explicit"
.
Нельзя задать значения свойств объекта Binding после присоединения привязки к целевому элементу и целевому свойству. При попытке вы получите исключение во время выполнения.