假设我有一个包含以下数据的DataGrid:
John, Male
Mary, Female
Tony, Male
Sally, Female
Run Code Online (Sandbox Code Playgroud)
网格绑定到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;
}
}
}
Run Code Online (Sandbox Code Playgroud)
如果是这样,我如何将其绑定到行或列的背景颜色?我已经有这样的有界列:
<DataGridColumn Header="Name" Binding={Binding Name} />
<DataGridColumn Header="Gender" Binding={Binding Gender} />
Run Code Online (Sandbox Code Playgroud)