如果想让选中DataGridview的行显示不同颜色,就要通过DataGridview控件RowPerpaint事件中重新设置所选行的DefauleCellStyle属性来实现

  1. private void dataGridView1_RowPrePaint(object sender, DataGridViewRowPrePaintEventArgs e)
  2. {
  3. //判断 当前索引值是否大于等于DataGridview中行的个数减去1
  4. if (e.RowIndex>=dataGridView1.Rows.Count - 1)
  5. {
  6. return;
  7. }
  8. //定一个前景颜色
  9. Color forecolor = new Color();
  10. //定义一个背景颜色
  11. Color backcolor = new Color();
  12.  
  13. //var 所有类的值类型 object 所有类的引用类型
  14. var row = dataGridView1.Rows[e.RowIndex];
  15. //如果 当前行等于表格当前行
  16. if (row==dataGridView1.CurrentRow)
  17. {
  18. //如果当前行默认的前景颜色不等于白色
  19. if (row.DefaultCellStyle.ForeColor != Color.White)
  20. {
  21.  
  22. forecolor = row.DefaultCellStyle.ForeColor;
  23. //当前行默认前景颜色等于白色
  24. row.DefaultCellStyle.ForeColor = Color.White;
  25. }
  26.  
  27. if (row.DefaultCellStyle.BackColor != Color.Blue)
  28. {
  29. backcolor = row.DefaultCellStyle.BackColor;
  30. row.DefaultCellStyle.BackColor = Color.Blue;
  31. }
  32.  
  33. }
  34. //如果当前行不等于表格的行
  35. else
  36. {
  37. //当前行的默认背景颜色等于定义的变量颜色
  38.  
  39. row.DefaultCellStyle.BackColor = backcolor;
  40. row.DefaultCellStyle.ForeColor = forecolor;
  41. }
  1. private void dataGridView1_RowPrePaint(object sender, DataGridViewRowPrePaintEventArgs e)
  2. {
  3. //判断 当前索引值是否大于等于DataGridview中行的个数减去1
  4. if (e.RowIndex>=dataGridView1.Rows.Count - )
  5. {
  6. return;
  7. }
  8. //定一个前景颜色
  9. Color forecolor = new Color();
  10. //定义一个背景颜色
  11. Color backcolor = new Color();
  12.  
  13. //var 所有类的值类型 object 所有类的引用类型
  14. var row = dataGridView1.Rows[e.RowIndex];
  15. //如果 当前行等于表格当前行
  16. if (row==dataGridView1.CurrentRow)
  17. {
  18. //如果当前行默认的前景颜色不等于白色
  19. if (row.DefaultCellStyle.ForeColor != Color.White)
  20. {
  21.  
  22. forecolor = row.DefaultCellStyle.ForeColor;
  23. //当前行默认前景颜色等于白色
  24. row.DefaultCellStyle.ForeColor = Color.White;
  25. }
  26.  
  27. if (row.DefaultCellStyle.BackColor != Color.Blue)
  28. {
  29. backcolor = row.DefaultCellStyle.BackColor;
  30. row.DefaultCellStyle.BackColor = Color.Blue;
  31. }
  32.  
  33. }
  34. //如果当前行不等于表格的行
  35. else
  36. {
  37. //当前行的默认背景颜色等于定义的变量颜色
  38.  
  39. row.DefaultCellStyle.BackColor = backcolor;
  40. row.DefaultCellStyle.ForeColor = forecolor;
  41. }

DataGrridView 当前行显示不同颜色的更多相关文章

  1. winform中dataGridView隔行显示不同的背景色,鼠标移动上显示不同颜色,离开后变回原色

    winform中dataGridView隔行显示不同的背景色,鼠标移动上显示不同颜色,离开后变回原色 先设置奇数行颜色,这个有个自带的属性AlternatingRowsDefaultCellStyle ...

  2. python: HTML之 鼠标放上去下拉项字体显示不同颜色

    鼠标放上去下拉项字体显示不同颜色 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "h ...

  3. 超赞的CSS3进度条 可以随进度显示不同颜色

    原文:超赞的CSS3进度条 可以随进度显示不同颜色 现在的WEB已经不是以前的WEB了,传输更大的数据量,有着更加复杂的计算,这就需要利用进度条来提高用户体验,必要时可以让用户耐心等待,不至于因操作卡 ...

  4. 设置UIButton中的文字和图片,设置UILabel的文在显示不同颜色

    UIButton: UIEdgeInsets 在UIButton中有三个对EdgeInsets的设置:ContentEdgeInsets.titleEdgeInsets.imageEdgeInsets ...

  5. Matlab scatter 如何显示不同颜色点状

    有时候需要在matlab scatter绘图中显示不同颜色区分,如下图是人体血压高压.低压与年龄关系的散点图. 红色点表示高压 绿色点表示低压 用 matlab 如何实现呢? 1.创建一维矩阵x,y1 ...

  6. android控件TextView之 分段显示不同颜色

    代码如下: attrs.xml文件: 第二种方式: String newMessageInfo = "<font color='red'><b>" + 红色 ...

  7. echarts彩虹柱状图 每个bar显示不同颜色, 标题在不同位置 ,工具中有可以直接保存为图片下载,平均线的添加

    可以参考: https://echarts.baidu.com/echarts2/doc/example.html https://echarts.baidu.com/echarts2/doc/doc ...

  8. RichTextBox指定全部文字显示不同颜色及部分文字高亮颜色显示

    指定全部显示不同颜色: public void SetTextContent(string text, ColorEnum color) { Font font = , FontStyle.Bold) ...

  9. (转)用JS实现表格中隔行显示不同颜色

    用JS实现表格中隔行显示不同颜色 第一种: <style> tr{bgColor:expression(     this.bgColor=((this.rowIndex)%2==0 )? ...

随机推荐

  1. kubectl get componentstatus ERROR:HTTP probe failed with statuscode: 503

    通过kubectl命令可以查看k8s各组件的状态: [root@wecloud-test-k8s-1 ~]# kubectl get cs NAME STATUS MESSAGE ERROR cont ...

  2. 467. Unique Substrings in Wraparound String

    Consider the string s to be the infinite wraparound string of "abcdefghijklmnopqrstuvwxyz" ...

  3. 【OCP-12c】CUUG 071题库考试原题及答案解析(20)

    20.choose two Examine the description of the EMP_DETAILS table given below: Which two statements are ...

  4. kali linux之无线渗透(续)

    Airolib 设计用于存储ESSID和密码列表,计算生成不变的PMK(计算资源消耗型) PMK在破解阶段被用于计算PTK(速度快,计算资源要求少) 通过完整性摘要值破解密码SQLite3数据库存储数 ...

  5. 【BZOJ1956】[Ahoi2005]SHUFFLE 洗牌

    题目描述: 这道题,我们首先一眼瞪出来一个规律:对于一个位置为i的牌,在1次洗牌后,他的位置处于(i*2)%(n+1) 的位置 那么,显然的,对于M次洗牌 我们只需要求出2的m次方,这个我们采用快速幂 ...

  6. LOJ#2039. 「SHOI2015」激光发生器(计算几何)

    题面 传送门 题解 如果我初中科学老师知道我有一天计算的时候入射角不等于反射角不知道会不会把我抓起来打一顿-- 这题本质上就是个模拟,需要的芝士也就计蒜几盒的那点,不过注意细节很多,放到考场上只能看看 ...

  7. django_jquery中使用ajax发送post请求变成get请求

    今天在进行js开发的过程中出现了一个奇怪的问题,就是使用ajax向后端发送post请求时,在浏览器network中查看response时,显示400 bad request 并且请求方式变成get,因 ...

  8. [Scala随用随学] —— sealed声明的作用

    今天在看MLlib的源码时,看到Vector的声明是sealed trait,很好奇这个sealed有什么作用,与是搜到了这个文章: http://www.cnblogs.com/rollenholt ...

  9. asp代码审计

    今天给大家带来的是asp程序的代码审计,asp和aspx代码审计来说,有很多相同的地方. 正好今天要交任务,最近的目标站的子域名使用了这个cms,但是版本不一定是这个,好累. 本文作者:i春秋签约作家 ...

  10. Windows 断开CIFS共享出现 “此网络连接不存在”

    Windows 断开CIFS共享出现 "此网络连接不存在" 首先请您尝试 net use * /delete /y 命令,若无效本文就是为您准备的. 检查是否是因为用户被设置共享桌 ...