1

我在 Silverlight 工作,试图弄清楚如何根据单元格的内容设置网格单元格的字体颜色。

我有一个绑定到 DataGrid 的 ObservableCollection,并且我的项目实现了 INotifyPropertyChanged,因此当我更改值时网格会更新;一切正常,包括让我对项目进行排序并在我更新基础项目时保持排序。

我知道我可以使用 LoadingRow 事件来更改颜色,但我可以让事件触发的唯一方法是更改​​网格数据源,在这种情况下,我的排序会超出窗口。

所以,我真正想要的是一种方法

  1. 循环数据网格中的行,找到我需要的单元格,然后更改它的颜色或
  2. 实现一个自定义列,我可以使用它来动态设置颜色。

问题是如何实际这些事情:)。

4

1 回答 1

0

您应该为此使用数据绑定。

  1. 将单元格字体颜色绑定到单元格的内容
  2. 创建一个转换器 IValueConverter ,根据您的需要将值转换为颜色

请参阅此处以获取一个很好的示例
http://weblogs.asp.net/joewrobel/archive/2009/01/25/conditional-formatting-in-the-silverlight-datagrid.aspx

于 2010-05-14T12:39:55.233 回答