问题描述
刚学习c#。。请谅解。我先给第五行设置背景色为深蓝色。没问题dataGridView1.Rows[4].DefaultCellStyle.BackColor=深蓝色;然后再给第三列设置背景色为浅蓝色。问题出来了。。。dataGridView1.Columns[3].DefaultCellStyle.BackColor=浅蓝色;第五行第三列的那个单元格,颜色应该是变成浅蓝色。但就是改不了很是奇怪。求各位大神指教。十分感谢!
解决方案
解决方案二:
Row的DefaultCellStyle优先级比较高呗要么你删掉第5行的样式要么给那个单元格再单独设置一种样式
解决方案三:
DataGridView.DefaultCellStyleDataGridViewColumn.DefaultCellStyleRowsDefaultCellStyleAlternatingRowsDefaultCellStyleDataGridViewRow.DefaultCellStyleDataGridViewCell.Style单元格计算样式的顺序
解决方案四:
你这两行代码顺序颠倒下,你的问题就是为啥不是深蓝色了
解决方案五:
引用1楼shingoscar的回复:
Row的DefaultCellStyle优先级比较高呗要么你删掉第5行的样式要么给那个单元格再单独设置一种样式
单个我试过可以,不过这样效率好低啊。。。目前只是个例子,之后要用到好几百行几十列那就要傻了至于删掉第五行样式的话那也还是要再变色一次吗?
解决方案六:
引用3楼starfd的回复:
你这两行代码顺序颠倒下,你的问题就是为啥不是深蓝色了
颠倒了下,先给列上色,然后给行上色。。。还是跟图上最后一张一样,行覆盖了列的颜色
解决方案七:
引用2楼shingoscar的回复:
DataGridView.DefaultCellStyleDataGridViewColumn.DefaultCellStyleRowsDefaultCellStyleAlternatingRowsDefaultCellStyleDataGridViewRow.DefaultCellStyleDataGridViewCell.Style单元格计算样式的顺序
看的不是太懂。。。顺序大概是明白了。。有木有好方法呢。。
解决方案八:
引用6楼hxd15110的回复:
Quote: 引用2楼shingoscar的回复:
DataGridView.DefaultCellStyleDataGridViewColumn.DefaultCellStyleRowsDefaultCellStyleAlternatingRowsDefaultCellStyleDataGridViewRow.DefaultCellStyleDataGridViewCell.Style单元格计算样式的顺序看的不是太懂。。。顺序大概是明白了。。有木有好方法呢。。
顺序你明白了,那还不能理解吗,要覆盖掉DataGridViewRow.DefaultCellStyle只能用DataGridViewCell.Style
解决方案九:
行优先级大于列