次の方法で共有


方法: バインドの方向を指定する

この例では、バインディングがバインディング ターゲット (ターゲット) プロパティ、バインディング ソース (ソース) プロパティ、またはターゲット プロパティとソース プロパティの両方のみを更新するかどうかを指定する方法を示します。

バインドの方向を指定するには、Binding.Mode プロパティを使用します。 更新プログラムのバインドに使用できるオプションを次に示します。

  • BindingMode.TwoWay、ターゲット プロパティまたはソース プロパティが変更されるたびに、ターゲット プロパティまたはプロパティを更新します。

  • BindingMode.OneWay は、ソース プロパティが変更された場合にのみ、ターゲット プロパティを更新します。

  • BindingMode.OneTime は、アプリケーションの起動時または DataContext が変更された場合にのみ、ターゲット プロパティを更新します。

  • BindingMode.OneWayToSource は、ターゲット プロパティが変更されたときにソース プロパティを更新します。

  • BindingMode.Default により、対象のプロパティで既定の Mode 値が使用されます。

詳細については、BindingMode 列挙型を参照してください。

次の例は、Mode プロパティを設定する方法を示しています。

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

ソースの変更 (OneWay バインドと TwoWay バインディングに適用可能) を検出するには、ソースで適切なプロパティ変更通知メカニズム (INotifyPropertyChangedなど) を実装する必要があります。 INotifyPropertyChanged 実装の例については、「プロパティ変更通知の実装」を参照してください。

TwoWay バインドまたは OneWayToSource バインドの場合は、UpdateSourceTrigger プロパティを設定することで、ソースの更新のタイミングを制御できます。 詳細については、UpdateSourceTrigger を参照してください。

関連項目