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 ==)
{
this.dataGridView1.Rows[].DefaultCellStyle.BackColor = Color.Red;
this.dataGridView1.Rows[].Selected =false;
this.dataGridView1.Rows[].DefaultCellStyle.BackColor = Color.Wheat;
this.dataGridView1.Rows[].DefaultCellStyle.BackColor = Color.Wheat;
}
else if (index ==)
{
this.dataGridView1.Rows[].DefaultCellStyle.BackColor = Color.Red;
this.dataGridView1.Rows[].Selected =false;
this.dataGridView1.Rows[].DefaultCellStyle.BackColor = Color.Wheat;
this.dataGridView1.Rows[].DefaultCellStyle.BackColor = Color.Wheat;
}
else if (index ==)
{
this.dataGridView1.Rows[].DefaultCellStyle.BackColor = Color.Red;
this.dataGridView1.Rows[].Selected =false;
this.dataGridView1.Rows[].DefaultCellStyle.BackColor = Color.Wheat;
this.dataGridView1.Rows[].DefaultCellStyle.BackColor = Color.Wheat;
}
}
privatevoid rowMergeView1_DataBindingComplete(object sender, DataGridViewBindingCompleteEventArgs e)
{
//updateview();
for (int i =; 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);
}
}
}
C#中关于DataGridView行和列的背景色-前景色设置的更多相关文章
- [转]python中pandas库中DataFrame对行和列的操作使用方法
转自:http://blog.csdn.net/u011089523/article/details/60341016 用pandas中的DataFrame时选取行或列: import numpy a ...
- python中pandas库中DataFrame对行和列的操作使用方法
用pandas中的DataFrame时选取行或列: import numpy as np import pandas as pd from pandas import Sereis, DataFram ...
- winform中的DataGridView的列宽设置
DataGridView有一个属性AutoSizeColumnMode,他有很多枚举值: 1.AllCells 调整列宽,以适合该列中的所有单元格的内容,包括标题单元格. 2.AllCellsExc ...
- jQuery实现表格冻结行和列
前几天,遇到一个需求是要将表格的前几行和前几列冻结即固定,就是在有滚动条的情况下,保持那几行和那几列固定,这个需求其实是一个非常常见的需求,因为在涉及好多行和列时,在拖动滚动条时,我们需要知道每行每列 ...
- php实例源码之获取mysql表中所有行和列
本文章向大家介绍php获取mysql表中所有行和列的源码,主要使用到mysql_num_rows和mysql_fetch_row等php的数据库操作函数,该实例有助于大家熟悉PHP mysql数据库编 ...
- PyQt(Python+Qt)学习随笔:QStandardItemModel指定行和列创建模型中的项以及索引
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 一.引言 QStandardItemModel有两种构造方法: QStandardItemModel ...
- 自定义datagridview列,却提示DataGridView 控件中至少有一列没有单元格模板
哈哈,一个小误区,你看看设计窗体生成的代码,DataGridView的列不是GridViewColumn 而是DataGridViewTextBoxColumn你只要添加这个类型的对象就可以了,我也是 ...
- .NET组件控件实例编程系列——5.DataGridView数值列和日期列
在使用DataGridView编辑数据的时候,编辑的单元格一般会显示为文本框,逻辑值和图片会自动显示对应类型的列.当然我们自己可以手工选择列的类型,例如ComboBox列.Button列.Link列. ...
- 【jQuery 冻结任意行列】冻结任意行和列的jQuery插件
实现原理: 创建多个div,div之间通过css实现层叠,每个div放置当前表格的克隆.例如:需要行冻结时,创建存放冻结行表格的div,通过设置z-index属性和position属性,让冻结行表格在 ...
随机推荐
- 【转】ionic2 返回按钮
首先可以在 app.module.ts 文件中配置. @NgModule 中的 imports 属性的 IonicModule.forRoot 第二个参数,如下: IonicModule.forRoo ...
- iOS开发技巧 - Size Class与iOS 8多屏幕适配(一)
0. 背景: 在iOS开发中,Auto Layout(自动布局)能解决大部分的屏幕适配问题. 但是当iPhone 6和iPhone 6 Plus发布以后, Auto Layout已经不能解决复杂的屏幕 ...
- Android Studio 之 环境搭建
从网上整理的安装步骤及初次使用问题解决. 一.安装步骤 1.安装前确认JDK已经安装并配置好环境变量(要求JDK1.7以上的版本). 2.官网下载Windows安装包,网上下载的版本是android- ...
- VS2012 No exports were found that match the constraint
1:打开VS2012新建工程以及打开项目报一下错误提示 2:是由于.NET Framework 4.5 补丁造成的 从:https://www.microsoft.com/zh-CN/download ...
- Flash和js交互的效率分析
Flash和js交互的效率分析 AS代码: var time:int = getTimer(); for (var i:int = 0; i < 50000; i++) { External ...
- Java HttpClient Basic Credential 认证
HttpClient client = factory.getHttpClient(); //or any method to get a client instance Credentials cr ...
- 【DB2】慎用nickname,可能会引起效率较低
在使用db2的时候,在A库建立了nickname,指向B库的物理表(数据量800多万),现在使用程序(JDBC)连接数据库,并计算指标,但是发现效率很低. 解决办法: 删除A库中的nickname,在 ...
- python之获取微信access_token
# -*- coding: cp936 -*- #python 27 #xiaodeng #获取微信access_token #办法一:将该url直接填写到浏览器地址中可以获得access_token ...
- Cecos国内集成系统基于rhel6.5
整体上,secos对云.虚拟化.等整体的解决方案(一键打包),很不错.做出了有益的探索.... 本次测试基于版本测试,不得说官方文档也是挺全的,很好!!!! CecOS-1.4.2-Final-170 ...
- Spring Boot 使用Jar打包发布, 并使用 Embedded Jetty/Tomcat 容器
Jar包发布 在项目pom.xml中, 如果继承了Spring Boot的starter parent, 那么默认已经包含打包需要的plugins了, 设置为jar就能直接打包成包含依赖的可执行的ja ...