问题描述
想让单元格的前四行未一个颜色比如蓝色,接下来四行为另一个颜色比如白色,再接下来四行又为蓝色,循环。就是想让四行四行的区分开
解决方案
解决方案二:
重绘单元格~~~
解决方案三:
能不能具体一下?不会哎
解决方案四:
引用2楼longyue11的回复:
能不能具体一下?不会哎
没在windows下,我也忘了哪个事件了,我只能大概说说datagridview有单元格绘制事件的,你找找事件列表里事件名字带"paint"的看看然后在单元格绘制事件里,事件参数里应该是能获取到行号和列号的,根据你的需要逻辑去绘制颜色就行了
解决方案五:
DataTabledt=newDataTable();dt.Columns.Add("a",typeof(string));dt.Columns.Add("b",typeof(string));dt.Columns.Add("c",typeof(string));dt.Columns.Add("d",typeof(string));dt.Columns.Add("e",typeof(string));dt.Columns.Add("f",typeof(string));dt.Columns.Add("g",typeof(string));dt.Columns.Add("h",typeof(string));dt.Columns.Add("i",typeof(string));dt.Columns.Add("j",typeof(string));dt.Columns.Add("k",typeof(string));dt.Columns.Add("l",typeof(string));dt.Columns.Add("m",typeof(string));dt.Columns.Add("n",typeof(string));for(inti=0;i<22;i++){object[]values={"a"+i,"b"+i,"c"+i,"d"+i,"e"+i,"f"+i,"g"+i,"h"+i,"i"+i,"j"+i,"k"+i,"l"+i,"m"+i,"n"+i,};dt.Rows.Add(values);}this.dataGridView1.DataSource=dt.DefaultView;for(inti=0;i<this.dataGridView1.Columns.Count;i++){if(i/4%2==0){this.dataGridView1.Columns[i].DefaultCellStyle.BackColor=Color.Blue;}}
解决方案六:
4楼给出的是列不是行不过行也一样的,把Columns换成Rows
解决方案七:
解决方案八:
发三个就回三个publicstaticvoidDgvRowColor(DataGridViewdgv){if(dgv.Rows.Count!=0)return;boolb=false;for(inti=0;i<dgv.Rows.Count;i++){dgv.Rows[i].DefaultCellStyle.BackColor=b?Color.Blue:Color.White;if((i+1)%4==0)b=!b;}}
解决方案九:
错了,重发一下publicstaticvoidDgvRowColor(DataGridViewdgv){if(dgv.Rows.Count==0)return;boolb=false;for(inti=0;i<dgv.Rows.Count;i++){dgv.Rows[i].DefaultCellStyle.BackColor=b?Color.Blue:Color.White;if((i+1)%4==0)b=!b;}}