【问题标题】:Binding Style for DataGrid CellsDataGrid 单元格的绑定样式
【发布时间】:2012-07-28 21:39:30
【问题描述】:

我的问题很简单。我有一个数据网格和一个绑定的项目集合。 数据显示没有任何问题,但我想格式化单元格。

collection 中的 item 简单地说了这个结构:

{ 
public string Text { get; set; }
public string Title {get;set;}
public Brush BGBrush { get; set; }
public Brush Color { get; set; }
}

我是这样映射的:

<DataGridTextColumn Binding="{Binding Path=Text}" Header="{Binding Path=Title}" Foreground="{Binding Path=Color}" />

数据显示,但前景和背景没有改变。 任何帮助将不胜感激。 我可能做错了,但我只是在学习数据网格。 非常感谢您的帮助

【问题讨论】:

  • 我认为这不会起作用,因为 Column 的 Foreground 属性与来自 DataGrid 的 ItemsSource 属性的数据源集合不接触。在这里,您想为每一列的单元格设置不同的颜色,而不是整个列单元格。希望我在下面的回答是您想要的。

标签: c# wpf datagrid styles


【解决方案1】:

您需要为您的情况使用DataGridTemplateColumn,如下所示:

            <DataGridTemplateColumn Header="Column 1"  Width="150">
                <DataGridTemplateColumn.CellTemplate  >
                    <DataTemplate>
                        <TextBlock Text="{Binding Text}" Foreground="{Binding Color}"  />
                    </DataTemplate>
                </DataGridTemplateColumn.CellTemplate>
            </DataGridTemplateColumn>

希望对你有帮助

【讨论】:

    猜你喜欢
    • 2017-01-28
    • 2022-01-15
    • 2013-08-18
    • 2013-09-08
    • 1970-01-01
    • 2011-05-12
    • 2013-02-19
    • 1970-01-01
    • 2020-03-27
    相关资源
    最近更新 更多