wpf datagrid 指定单元格如何绑定该单元格上方的单宇格

ttsffgg 2017-12-10 07:45:23
在WPF中使用DataGrid控件,需要实现一个要求:
在一个列中,除了第一格文字颜色固定为黑色外,其它每个单元格的文字色要根据其上方的单元格的内容来决定,比如这样

列标题
0红色
1黄色
2绿色
3蓝色

我能想到的方法是为列的单元格前景色设置绑定,绑定到上一个单元格的文本,并添加转换器将文本转换成颜色.
但不知道如何才能绑定上一格,请知道的朋友指点一下,谢谢



也想过能否直接在数据源上加上颜色信息,但也失败了,原因是DataGrid在运行时可能会被排序,而排序动作是无法影响到数据源的顺序的,也就是说一旦用户进行排序,数据源就无法判断每个单元格上面的到底是哪一格了.
...全文
99 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
threenewbee 2017-12-11
  • 打赏
  • 举报
回复
需要定义枚举或者常量,关联你的颜色和对应的rgb值,然后根据行号- 1得到文字,转换为颜色,再设置。
exception92 2017-12-11
  • 打赏
  • 举报
回复
但不知道如何才能绑定上一格, ->"上一格“表述的太笼统,转换器是可以的。 根据的当前行可以获取到当前行的索引,具体查询WPF的IndexFromContainer方法。根据索引再取的上一行数据,获取对应的单元格值改变颜色即可。

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧