0

我有一个 X 类有一些数据:

private string yyy;

public string YYY
{
    get { return yyy; }
    set
    {
        yyy= value;
        NotifyPropertyChanged("YYY");
    }
}

private SolidBrush color;

public SolidBrush Color
{
    get { return color; }
    set
    {
        color= value;
        NotifyPropertyChanged("Color");
    }
}

我的数据网格绑定到此类,如下所示:

<DataGrid x:Name="dg1" ItemsSource="{Binding}" AutoGenerateColumns="False">
    <DataGrid.Columns>
        <DataGridTemplateColumn Header="yyy" >
            <DataGridTemplateColumn.CellTemplate>
                <DataTemplate>
                    <TextBlock Text="{Binding YYY}" Foreground="{Binding Color}"/>
                </DataTemplate>
            </DataGridTemplateColumn.CellTemplate>
        </DataGridTemplateColumn>
</DataGrid>

当我执行 Foreground="Red" 时,它可以工作,但绑定它不起作用,为什么?

我把它刷成这样的值:

this.Color = new SolidBrush(color);

color 是一个包含任何颜色的变量

4

1 回答 1

3

看起来您将System.Windows.Media.SolidColorBrushSystem.Drawing.SolidBrush混淆了,这不是 WPF 的一部分。

您必须使用SolidColorBrush而不是SolidBrush.

于 2013-02-05T09:47:21.473 回答