【发布时间】:2016-01-23 09:34:50
【问题描述】:
假设我有一个包含以下数据的 DataGrid:
John, Male
Mary, Female
Tony, Male
Sally, Female
网格绑定到 Person 模型对象的 ObservableCollection,该对象为属性 Person.Name 和 Person.Gender 实现 INofifyPropertyChanged。我现在想将 DataGridTextColumn 的背景颜色绑定到人的性别,以便包含男性的行是蓝色的,而包含女性的行是粉红色的。是否可以通过像这样向 Person 模型添加另一个属性来做到这一点:
public class Person
{
public Color BackgroundColor
{
get
{
if (gender == "Male")
{
return Color.Blue;
}
else
{
return Color.Pink;
}
}
}
如果是这样,我如何将它绑定到行或列的背景颜色?我已经有这样的有界列:
<DataGridColumn Header="Name" Binding={Binding Name} />
<DataGridColumn Header="Gender" Binding={Binding Gender} />
【问题讨论】:
-
仅
DataGridTextColumn还是整行? -
我想要整行。
标签: c# wpf data-binding datagrid background-color