Instrukcje: określanie kierunku powiązania

W tym przykładzie pokazano, jak określić, czy powiązanie aktualizuje tylko właściwość docelową powiązania (docelową), właściwość źródła powiązania (źródło) lub właściwość docelową i właściwość źródłową.

Przykład

Właściwość służy Binding.Mode do określania kierunku powiązania. Poniżej przedstawiono dostępne opcje aktualizacji powiązań:

  • BindingMode.TwoWay aktualizuje właściwość docelową lub właściwość za każdym razem, gdy zmienia się właściwość docelowa lub właściwość źródłowa.

  • BindingMode.OneWay aktualizuje właściwość docelową tylko wtedy, gdy zmienia się właściwość źródłowa.

  • BindingMode.OneTime aktualizuje właściwość docelową tylko wtedy, gdy aplikacja zostanie uruchomiona lub gdy zostanie zmieniona DataContext .

  • BindingMode.OneWayToSource aktualizuje właściwość źródłową, gdy zmienia się właściwość docelowa.

  • BindingMode.Default powoduje, że wartość domyślna Mode właściwości docelowej ma być używana.

Aby uzyskać więcej informacji, zobacz BindingMode wyliczenie.

W poniższym przykładzie pokazano, jak ustawić Mode właściwość .

<TextBlock Name="IncomeText" Grid.Row="0" Grid.Column="1"
  Text="{Binding Path=TotalIncome, Mode=OneTime}"/>

Aby wykryć zmiany źródła (dotyczy powiązań OneWay i TwoWay), źródło musi wdrożyć odpowiedni mechanizm powiadamiania o zmianie właściwości, taki jak INotifyPropertyChanged. Zobacz Implementowanie powiadomienia o zmianie właściwości, aby zapoznać się z przykładem implementacji INotifyPropertyChanged .

W przypadku TwoWay powiązań lub OneWayToSource można kontrolować czas aktualizacji źródłowych, ustawiając UpdateSourceTrigger właściwość . Aby uzyskać więcej informacji, zobacz UpdateSourceTrigger.

Zobacz też