次の方法で共有


方法 : バインディングの方向を指定する

更新 : 2007 年 11 月

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

使用例

Mode プロパティを使用して、バインディングの方向を指定します。バインディングの更新で使用可能なオプションを次の列挙値の一覧に示します。

  • TwoWay は、ソース プロパティまたはターゲット プロパティのいずれかが変更されると、ターゲット プロパティまたはソース プロパティを更新します。

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

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

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

  • 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 を参照してください。

参照

概念

データ バインディングの概要

参照

Binding

その他の技術情報

データ バインディングのサンプル

データ バインディングに関する「方法」トピック