zoukankan      html  css  js  c++  java
  • C#中关于DataGridView行和列的背景色-前景色设置

    关于DataGridView行和列的背景色-前景色设置

    1.设定DataGridView全部单元格的Style
      DataGridView内所有单元格的Style变更,可以使用DataGridView对象的DefaultCellStyle属性实现。

    1
    2
    3
    4
    5
    //包含Header所有的单元格的背景色为黄色
    DataGridView1.DefaultCellStyle.BackColor = Color.Yellow;
     
    //包含Header所有的单元格的前景色为黄色
    DataGridView1.DefaultCellStyle.ForeColor= Color.Yellow; //前景色设置,只需要将BackColor改为ForeColor即可

    2.DataGridView.DefaultCellStyle属性可以对包含Header所有单元格的Style进行变更设定,对除 Header以外所  有单元格的Style进行变更,可以使用DataGridView.RowsDefaultCellStyle属性实现

    1
    2
    // Header以外所有的单元格的背景色为黄色
    DataGridView1.RowsDefaultCellStyle.BackColor = Color.Yellow;

    3.变更某一个单元格的Style
      DataGridViewCell.Style属性可以对单一的单元格的Style进行变更设定。
      如下面的例子,只对(0, 0)单元格的背景色设定为粉红色。

    1
    2
    //(0, 0)单元格的背景色为粉色
    DataGridView1[0, 0].Style.BackColor = Color.Pink;

    4.变更被指定的列、行的单元格的Style
      DataGridViewColumn.DefaultCellStyle属性,可以对列的单元格Style进行变更设定。  DataGridViewRow.DefaultCellStyle属性,可以对行的单元格Style进行变更设定。
      如下面的例子,第一列的单元格的背景色为淡蓝色,第一行的单元格的背景色为淡灰色。

    1
    2
    3
    4
    5
    //索引0列的单元格的背景色为淡蓝色
    DataGridView1.Columns[0].DefaultCellStyle.BackColor = Color.Aqua;
     
    //索引0行的单元格的背景色为淡灰色
    DataGridView1.Rows[0].DefaultCellStyle.BackColor = Color.LightGray;

    5.变更奇数行的单元格Style
      DataGridView.AlternatingRowsDefaultCellStyle属性,可以变更DataGridView的奇数行的单元格 Style。
      如下面的例子,奇数行的单元格的背景色设定为黄绿色

    1
    2
    //奇数行的单元格的背景色为黄绿色
    DataGridView1.AlternatingRowsDefaultCellStyle.BackColor = Color.GreenYellow;

    6.变更列Header、行Header的单元格Style
      列Header的单元格style的变更,可以使用,DataGridView.ColumnHeadersDefaultCellStyle属性实现。行  Header的单元格Style的变更,可以使用DataGridView.RowHeadersDefaultCellStyle属性实现。但是,Header  的是左侧的单元格需要通过DataGridView.TopLeftHeaderCell属性,取得的DataGridViewHeaderCell对象的单    元格Style进行设定。
      如下面的例子,列Header的背景色为象牙色,行Header的背景色为橙色。

    1
    2
    3
    4
    5
    //列Header的背景色为象牙色
    DataGridView1.ColumnHeadersDefaultCellStyle.BackColor = Color.Ivory;
     
    //行Header的背景色为橙色
    DataGridView1.RowHeadersDefaultCellStyle.BackColor = Color.Lime;

      补充:每个Header单元格的单元格Style,可以使用这一些的方法取得,和一般的单元格一样,可以使用Style   属性变更,简而言之,就是个可以对每个单元格进行个性化设置。

      关于优先顺序

      设定单元格Style的属性有优先顺序的。顺序从高到低如下所示。
      1). DataGridViewCell.Style 
      2). DataGridViewRow.DefaultCellStyle 
      3). DataGridView.AlternatingRowsDefaultCellStyle 
      4). DataGridView.RowsDefaultCellStyle 
      5). DataGridViewColumn.DefaultCellStyle 
      6). DataGridView.DefaultCellStyle
      接下来是Header的单元格Style属性的优先顺序。
      1). DataGridViewCell.Style 
      2). DataGridView.RowHeadersDefaultCellStyle 
      3). DataGridView.ColumnHeadersDefaultCellStyle 
      4). DataGridView.DefaultCellStyle
      单元格本身的设定的Style是最优先的。

    privatevoid dataGridView1_DataBindingComplete(object sender, DataGridViewBindingCompleteEventArgs e)
    {
      int index = CardCMD.PublicInfoCom.GetLendRecordIndex();
      if (index ==0)
      {
        this.dataGridView1.Rows[0].DefaultCellStyle.BackColor = Color.Red;
        this.dataGridView1.Rows[0].Selected =false;
        this.dataGridView1.Rows[1].DefaultCellStyle.BackColor = Color.Wheat;
        this.dataGridView1.Rows[2].DefaultCellStyle.BackColor = Color.Wheat;
      }
      else if (index ==1)
      {
        this.dataGridView1.Rows[1].DefaultCellStyle.BackColor = Color.Red;
        this.dataGridView1.Rows[0].Selected =false;
        this.dataGridView1.Rows[0].DefaultCellStyle.BackColor = Color.Wheat;
        this.dataGridView1.Rows[2].DefaultCellStyle.BackColor = Color.Wheat;
      }
      else if (index ==2)
      {
        this.dataGridView1.Rows[2].DefaultCellStyle.BackColor = Color.Red;
        this.dataGridView1.Rows[0].Selected =false;
        this.dataGridView1.Rows[0].DefaultCellStyle.BackColor = Color.Wheat;
        this.dataGridView1.Rows[1].DefaultCellStyle.BackColor = Color.Wheat;
      }
    }
    privatevoid rowMergeView1_DataBindingComplete(object sender, DataGridViewBindingCompleteEventArgs e)
    {
      //updateview();
      for (int i =0; i <this.rowMergeView1.Rows.Count; i++)
      {
        try
        {
          this.rowMergeView1.Rows[i].DefaultCellStyle.BackColor = Color.FromName(softcolor[this.rowMergeView1.Rows[i].Cells["yujing"].Value.ToString()]);
        }
        catch (Exception ex)
        {
          new FileOper().writelog(ex.Message);
        }
      }
    } 
  • 相关阅读:
    在做nginx的服务器http错误和解决办法
    利用ffmpeg将MP4文件切成ts和m3u8
    整理:服务器命令(笔记)
    函数式编程
    Object
    promise
    前端模块化、工程化
    函数
    restful && rpc
    全局、局部变量
  • 原文地址:https://www.cnblogs.com/lgx5/p/8835253.html
Copyright © 2011-2022 走看看