語言

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 的值。 預設為 OneWay:來源會更新目標,但對目標值的變更不會更新來源。

範例

這個範例示範如何在 XAML 中設定綁定模式。

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

備註

對於 單向 與 雙向 綁定,動態變更不會自動傳播到目標,除非提供原始碼的部分支援。 你必須在來源物件上實作 INotifyPropertyChanged 介面,讓原始碼能透過綁定引擎監聽的事件回報變更。 對於 C#,請實作 System.ComponentModel.INotifyPropertyChanged。 對於 C++/WinRT,請實作 Microsoft::UI::Xaml::D ata::INotifyPropertyChanged。

對於 雙向 綁定,目標的變更會自動傳遞到來源,除非綁定目標是 TextBox.Text 屬性。 在這種情況下,更新只會在 文字框 失去焦點時發生。 另外,也可以將 TwoWay 綁定的 UpdateSourceTrigger 設為 Explicit,這時你可以透過呼叫 UpdateSource 來明確控制對原始碼的更新。

對於 OneTime 和 OneWay 綁定,呼叫 SetValue 會自動更改目標值並刪除綁定。

在綁定物件綁定到目標元素和目標屬性後,你無法設定 該物件的 屬性值。 如果你嘗試這樣做,會遇到執行時例外。

適用於

另請參閱