如何为DataGridView添加一个定制的Column Type


Posted in 面试题 onJanuary 21, 2014
这个例子实现了一个把数据中的Boolean值用Y或者N在DataGridView里面显示,步骤如下:

1. 建立一个继承DataGridViewTextBoxCell的类, 代码如下:

using System;
using System.Collections.Generic;
using System.Text;
using System.Windows.Forms;
using System.Drawing;

namespace com.Threes.CustomControl
{
public class DataGridViewBooleanCell : DataGridViewTextBoxCell
{
protected override void Paint(
Graphics graphics,
Rectangle clipBounds,
Rectangle cellBounds,
int rowIndex,
DataGridViewElementStates cellState,
object value,
object formattedValue,
string errorText,
DataGridViewCellStyle cellStyle,
DataGridViewAdvancedBorderStyle advancedBorderStyle,
DataGridViewPaintParts paintParts)
{
// Call the base class method to paint the default cell appearance.
base.Paint(graphics, clipBounds, cellBounds, rowIndex, cellState,
value, “”, errorText, cellStyle,
advancedBorderStyle, paintParts);
if (value is Boolean && (bool)value == true)
{
graphics.DrawString(“Y”, cellStyle.Font, new SolidBrush(cellStyle.ForeColor), cellBounds.X, cellBounds.Y);
}

}

}

}

2. 建立一个继承自DataGridViewColumn的类 代码如下:

using System;
using System.Collections.Generic;
using System.Text;
using System.Windows.Forms;

namespace com.Threes.CustomControl
{
public class DataGridViewBooleanColumn : DataGridViewColumn
{
public DataGridViewBooleanColumn()
{
this.CellTemplate = new DataGridViewBooleanCell();
}
}
}

然后把你的DataGridView里面的Boolean列的ColumnType改成以上的这个就可以了

Tags in this post...

面试题 相关文章推荐
开发中都用到了那些设计模式?用在什么场合?
Aug 21 面试题
某个公司的Java笔面试题
Mar 11 面试题
strstr()的简单实现
Sep 26 面试题
实现向右循环移位
Jul 31 面试题
下面关于"联合"的题目的输出是什么
Aug 06 面试题
.net开发工程师面试题
Feb 25 面试题
应届生.NET方向面试题
May 23 面试题
abstract是什么意思
Feb 12 面试题
如何在C# winform中异步调用web services
Sep 21 面试题
简述安装Slackware Linux系统的过程
Jan 12 面试题
请说出以下代码输出什么
Aug 30 面试题
Delphi CS笔试题
Jan 04 面试题
Net Remoting把服务器端激活两种模式
Jan 22 #面试题
.net软件工程师应聘上机试题
Mar 10 #面试题
请解释在new与override的区别
Oct 29 #面试题
关于递归的一道.NET面试题
May 12 #面试题
杭州信雅达系统.NET工程师面试试题
Feb 08 #面试题
请解释一下webService? 如何用.net实现webService
Jun 09 #面试题
请编程遍历页面上所有 TextBox 控件并给它赋值为 string.Empty
Dec 03 #面试题
You might like
一个简单的PHP投票程序源码
2007/03/11 PHP
PHP合并静态文件详解
2014/11/14 PHP
PHP如何实现跨域
2016/05/30 PHP
php实现自定义中奖项数和概率的抽奖函数示例
2017/05/26 PHP
js中eval详解
2012/03/30 Javascript
jquery中JSON的解析方式
2015/03/16 Javascript
JS实现网页顶部向下滑出的全国城市切换导航效果
2015/08/22 Javascript
不用一句js代码初始化组件
2016/01/27 Javascript
理解javascript中的严格模式
2016/02/01 Javascript
bootstrap模态框实现拖拽效果
2016/12/14 Javascript
jQuery为某个div加入行样式
2017/06/09 jQuery
vuejs 单文件组件.vue 文件的使用
2017/07/28 Javascript
Angular2 组件交互实例详解
2017/08/24 Javascript
Node.js readline 逐行读取、写入文件内容的示例
2018/03/01 Javascript
echarts同一页面中四个图表切换的js数据交互方法示例
2018/07/03 Javascript
vue内置组件keep-alive事件动态缓存实例
2020/10/30 Javascript
vue.js页面加载执行created,mounted的先后顺序说明
2020/11/07 Javascript
Python代码解决RenderView窗口not found问题
2016/08/28 Python
一个基于flask的web应用诞生 记录用户账户登录状态(6)
2017/04/11 Python
Python实现语音识别和语音合成功能
2019/09/20 Python
彻底搞懂 python 中文乱码问题(深入分析)
2020/02/28 Python
python脚本定时发送邮件
2020/12/22 Python
中国双语服务优势的在线购票及活动平台:247tickets
2018/10/26 全球购物
美国运动鞋类和服装零售连锁店:Shoe Palace
2019/08/13 全球购物
Java的五个基础面试题
2016/02/26 面试题
大门门卫岗位职责
2013/11/30 职场文书
自我鉴定注意事项
2014/01/19 职场文书
公司司机岗位职责
2014/02/07 职场文书
xxx同志考察材料
2014/02/07 职场文书
投标承诺书范本
2014/03/27 职场文书
给妈妈洗脚活动方案
2014/08/16 职场文书
幼儿生日活动方案
2014/08/27 职场文书
责任书格式
2015/01/29 职场文书
学雷锋活动简报
2015/07/20 职场文书
2016幼儿园毕业感言
2015/12/08 职场文书
OpenCV项目实践之停车场车位实时检测
2022/04/11 Python