0
我創建了一個自定義控件,表示從控制關聯通過Themes/Generic.xaml定義的默認不尋常主題的派生類。到現在爲止還挺好。WPF綁定到自定義控件的屬性
現在,我想使用控件像任何其他的主要WPF控件(文本框,列表框,標籤,文本塊,...)並綁定到定義的屬性。
自定義控件定義了一個名爲Value的屬性,我喜歡將Binding設置爲。但是沒有任何東西寫到DataContext的綁定屬性中。
嗯,這裏就是我這麼遠:
在自定義控件類中,有如下:
public static readonly DependencyProperty ValueProperty = DependencyProperty.Register(
"Value", typeof(string), typeof(MyClass),
new FrameworkPropertyMetadata("", new PropertyChangedCallback(onValuePropertyChangedCallback)));
private static void onValuePropertyChangedCallback(DependencyObject sender, DependencyPropertyChangedEventArgs args)
{
MyClass myClass = (MyClass)sender;
myClass.Value = (string)args.NewValue;
}
public string Value
{
get { return (string) GetValue(ValueProperty); }
set { SetValue(ValueProperty, value); }
}
當我使用的控制,這就像
<local:MyClass MyValue="{Binding CurrentValue}" ... />
DataContext的CurrentValue屬性從不受影響,從不改變它的值。
我在做什麼錯?
非常感謝!我假設,默認情況下BindingMode是TwoWay。現在,我已經設置了BindingMode,一切正常。再次感謝! – Elex