WPF中DataGrid如何改变一个单元格的颜色

时间:2022-10-26 19:25:53
我在xaml的DataGrid中绑定了DataView,DataView是从数据库中读取的。
现在想对DataGrid中的某些单元格进行颜色改变,如何操作?
谢谢!

9 个解决方案

#1


自定义摸板呗,用wpf别忘了这个特性。

#2


引用 1 楼 xuggzu 的回复:
自定义摸板呗,用wpf别忘了这个特性。


自定义模板会丢失很多特性,比如自动排序等等。我对WPF研究没那么深,再实现排序等功能头都大了。

我现在的想法是遍历DataGridCell,但是不知道怎么做,从网上搜到的方法遍历不到。

#3


谁说自定义会失去排序特性了?……
你既然用了wpf,又不去研究,那选它有何意义?

#4


我只能说,学wpf,不去理解mvvm,那不如去用winform

#5


引用 3 楼 xuggzu 的回复:
谁说自定义会失去排序特性了?……
你既然用了wpf,又不去研究,那选它有何意义?


因为我用了一下模板,如果只用简单的DataGridTextColumn之类的不会,但只用这些不能完全满足需求,如果自定义DataGridTemplateColumn就不能实现排序。

对于“你既然用了wpf,又不去研究,那选它有何意义? ”,这个并非我不去研究,因为wpf方面的东西太多,我只能用到什么去学习什么,不可能面面俱到,所以并没有不去研究,而且我一个人瞎捣鼓不如问问那些过来人,少走一些弯路,不是更好么?

#6


引用 4 楼 xuggzu 的回复:
我只能说,学wpf,不去理解mvvm,那不如去用winform


MvvM我去花时间学过,而且也用MvvMLight写过程序进行练习,Prism我也看过,只是太庞大,对我来说学这个有点吃不消,至于其他的DevExpress等等的Mvvm实现我都有了解。

你的结论只从我一个问题就得出来,是不是有些武断?

就算一个过来人,也不可能对wpf所有的知识都了如指掌吧?

#7


武断?如果我武断,那楼主第一个回答不更武断?
其实我是建议楼主从mvvm想想你提的问题怎么解决。说白了就是如果理解了,你要改的其实是数据,而不是直接改呈现。不知道楼主理解没?
实在不行那就百度吧,你的问题百度应该有解答。

#8


引用 7 楼 xuggzu 的回复:
武断?如果我武断,那楼主第一个回答不更武断?
其实我是建议楼主从mvvm想想你提的问题怎么解决。说白了就是如果理解了,你要改的其实是数据,而不是直接改呈现。不知道楼主理解没?
实在不行那就百度吧,你的问题百度应该有解答。


谢谢

#9


引用 7 楼 xuggzu 的回复:
武断?如果我武断,那楼主第一个回答不更武断?
其实我是建议楼主从mvvm想想你提的问题怎么解决。说白了就是如果理解了,你要改的其实是数据,而不是直接改呈现。不知道楼主理解没?
实在不行那就百度吧,你的问题百度应该有解答。


问题已解决。设置属性SortMemberPath后就可以排序。

#1


自定义摸板呗,用wpf别忘了这个特性。

#2


引用 1 楼 xuggzu 的回复:
自定义摸板呗,用wpf别忘了这个特性。


自定义模板会丢失很多特性,比如自动排序等等。我对WPF研究没那么深,再实现排序等功能头都大了。

我现在的想法是遍历DataGridCell,但是不知道怎么做,从网上搜到的方法遍历不到。

#3


谁说自定义会失去排序特性了?……
你既然用了wpf,又不去研究,那选它有何意义?

#4


我只能说,学wpf,不去理解mvvm,那不如去用winform

#5


引用 3 楼 xuggzu 的回复:
谁说自定义会失去排序特性了?……
你既然用了wpf,又不去研究,那选它有何意义?


因为我用了一下模板,如果只用简单的DataGridTextColumn之类的不会,但只用这些不能完全满足需求,如果自定义DataGridTemplateColumn就不能实现排序。

对于“你既然用了wpf,又不去研究,那选它有何意义? ”,这个并非我不去研究,因为wpf方面的东西太多,我只能用到什么去学习什么,不可能面面俱到,所以并没有不去研究,而且我一个人瞎捣鼓不如问问那些过来人,少走一些弯路,不是更好么?

#6


引用 4 楼 xuggzu 的回复:
我只能说,学wpf,不去理解mvvm,那不如去用winform


MvvM我去花时间学过,而且也用MvvMLight写过程序进行练习,Prism我也看过,只是太庞大,对我来说学这个有点吃不消,至于其他的DevExpress等等的Mvvm实现我都有了解。

你的结论只从我一个问题就得出来,是不是有些武断?

就算一个过来人,也不可能对wpf所有的知识都了如指掌吧?

#7


武断?如果我武断,那楼主第一个回答不更武断?
其实我是建议楼主从mvvm想想你提的问题怎么解决。说白了就是如果理解了,你要改的其实是数据,而不是直接改呈现。不知道楼主理解没?
实在不行那就百度吧,你的问题百度应该有解答。

#8


引用 7 楼 xuggzu 的回复:
武断?如果我武断,那楼主第一个回答不更武断?
其实我是建议楼主从mvvm想想你提的问题怎么解决。说白了就是如果理解了,你要改的其实是数据,而不是直接改呈现。不知道楼主理解没?
实在不行那就百度吧,你的问题百度应该有解答。


谢谢

#9


引用 7 楼 xuggzu 的回复:
武断?如果我武断,那楼主第一个回答不更武断?
其实我是建议楼主从mvvm想想你提的问题怎么解决。说白了就是如果理解了,你要改的其实是数据,而不是直接改呈现。不知道楼主理解没?
实在不行那就百度吧,你的问题百度应该有解答。


问题已解决。设置属性SortMemberPath后就可以排序。