1

我正在尝试在 Window 上注册 3 个依赖属性来控制它的格式。我一遍又一遍地查看了代码,但我一定遗漏了一些东西。

public static readonly DependencyProperty TextColorProperty = DependencyProperty.Register("TextColor", typeof(Color), typeof(WinStickyFingers), new PropertyMetadata(Colors.White));
public Color TextColor {
    get { return (Color)base.GetValue(TextColorProperty); }
    set { base.SetValue(TextColorProperty, value); }
}

public static readonly DependencyProperty BackgroundColorProperty = DependencyProperty.Register("BackgroundColor", typeof(Color), typeof(WinStickyFingers), new PropertyMetadata(Colors.Black));
public Color BackgroundColor {
    get { return (Color)base.GetValue(BackgroundColorProperty); }
    set {
        base.SetValue(BackgroundColorProperty, value);
    }
}    
<TextBlock DockPanel.Dock="Top" Text="{Binding Name}" Foreground="{Binding TextColor,Converter={StaticResource DebugConverter}}" Background="{Binding Path=BackgroundColor}" />

我正在使用 Bea Stollnitz 的调试方法,但我的断点甚至没有被触发。

4

1 回答 1

1

DataContext是什么TextBlock?它怎么知道它应该绑定到你的属性Window

您需要设置DataContextWindow实例,或在绑定上设置Source(or RelativeSource, or ElementName) 属性。所有这些属性都作为解决Binding. DataContext如果没有设置其他任何设置,则为后备,但我猜你也没有设置。

于 2009-08-05T13:56:44.723 回答