Share via


Binding.Mode プロパティ

定義

バインドのデータ フローの方向を示す値を取得または設定します。

public:
 property BindingMode Mode { BindingMode get(); void set(BindingMode value); };
BindingMode Mode();

void Mode(BindingMode value);
public BindingMode Mode { get; set; }
var bindingMode = binding.mode;
binding.mode = bindingMode;
Public Property Mode As BindingMode
<Binding Mode="bindingModeMemberName"/>

プロパティ値

BindingMode 値の 1 つ。 既定値は OneWay です。ソースはターゲットを更新しますが、ターゲット値を変更した場合、ソースは更新されません。

この例では、XAML でバインド モードを設定する方法を示します。

<TextBox x:Name="MyTextBox" Text="Text" Foreground="{Binding Brush1, Mode=OneWay}"/>

注釈

OneWayTwoWay のバインドの場合、ソースに対する動的な変更は、ソースからのサポートを提供せずにターゲットに自動的に反映されません。 バインディング エンジンがリッスンするイベントを通じてソースが変更を報告できるように、ソース オブジェクトに INotifyPropertyChanged インターフェイスを実装する必要があります。 C# または Microsoft Visual Basic の場合は、 System.ComponentModel.INotifyPropertyChanged を実装します。 Visual C++ コンポーネント拡張機能 (C++/CX) の場合は、 Windows::UI::Xaml::D ata::INotifyPropertyChanged を実装します。

TwoWay バインドの場合、ターゲットへの変更は、バインディング ターゲットが TextBox.Text プロパティである場合を除き、ソースに自動的に反映されます。 その場合、 更新は TextBox がフォーカスを失った場合にのみ行われます。 また、TwoWay バインドの UpdateSourceTriggerExplicit に設定することもできます。その場合は、UpdateSource を呼び出してソースへの更新を明示的に制御します。

OneTime バインドと OneWay バインドの場合、SetValue の呼び出しによってターゲット値が自動的に変更され、バインドが削除されます。

Binding オブジェクトのプロパティ値は、そのバインドがターゲット要素とターゲット プロパティにアタッチされた後は設定できません。 これを試みると、実行時例外が発生します。

適用対象

こちらもご覧ください