Binding.Mode 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得或設定值,這個值表示繫結中資料流程的方向。
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}"/>
備註
針對 OneWay 和 TwoWay 系結,來源的動態變更不會自動傳播至目標,而不需從來源提供一些支援。 您必須在來源物件上實作 INotifyPropertyChanged 介面,讓來源可以透過系結引擎接聽的附隨報告變更。 針對 C# 或 Microsoft Visual Basic,實作 System.ComponentModel.INotifyPropertyChanged。 針對 Visual C++ 元件延伸模組 (C++/CX) ,請實作 Windows::UI::Xaml::D ata::INotifyPropertyChanged。
若為 TwoWay 系結,則目標變更會自動傳播至來源,但系結目標為 TextBox.Text 屬性除外。 在此情況下,只有在 TextBox 失去焦點時,才會進行更新。 此外,您也可以將TwoWay系結上的UpdateSourceTrigger設定為Explicit,在此情況下,您可以藉由呼叫UpdateSource明確控制來源的更新。
針對 OneTime 和 OneWay 系結,呼叫 DependencyObject.SetValue 會自動變更目標值並刪除系結。
在系結附加至目標元素和目標屬性之後,您無法設定 Binding 物件的屬性值。 如果您嘗試這樣做,將會收到執行時間例外狀況。