如何为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...

面试题 相关文章推荐
介绍一下SQL Server里面的索引视图
Jul 31 面试题
Sql面试题
Mar 20 面试题
写一个在SQL Server创建表的SQL语句
Mar 10 面试题
中海讯通笔试题
Sep 15 面试题
程序员机试试题汇总
Mar 07 面试题
介绍一下OSI七层模型
Jul 03 面试题
C#如何调用Word并打开一个Word文档
May 08 面试题
什么是Linux虚拟文件系统VFS
Aug 25 面试题
说一下Linux下有关用户和组管理的命令
Aug 18 面试题
介绍一下EJB的体系结构
Aug 01 面试题
为什么要使用servlet
Jan 17 面试题
J2EE相关知识面试题
Aug 26 面试题
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 fsockopen中多线程问题的解决办法[翻译]
2011/11/09 PHP
PHP根据IP地址获取所在城市具体实现
2013/11/27 PHP
PHP中的多行字符串传递给JavaScript的两种方法
2014/06/19 PHP
Laravel+jQuery实现AJAX分页效果
2016/09/14 PHP
PHP中rename()函数的妙用讲解
2019/02/28 PHP
基于JavaScript实现继承机制之调用call()与apply()的方法详解
2013/05/07 Javascript
js判断客户端是iOS还是Android等移动终端的方法
2013/12/11 Javascript
node.js中的fs.readdir方法使用说明
2014/12/17 Javascript
MVVM模式中ViewModel和View、Model有什么区别?
2015/06/19 Javascript
JavaScript面向对象之私有静态变量实例分析
2016/01/14 Javascript
浅析ES6的八进制与二进制整数字面量
2016/08/30 Javascript
jQuery表单设置值的方法
2017/06/30 jQuery
jQuery+Cookie实现切换皮肤功能【附源码下载】
2018/03/25 jQuery
Vue中 key keep-alive的实现原理
2018/09/18 Javascript
node.js中ws模块创建服务端和客户端,网页WebSocket客户端
2019/03/06 Javascript
详解mpvue实现对苹果X安全区域的适配
2019/07/31 Javascript
JavaScript实现多球运动效果
2020/09/07 Javascript
用vue设计一个日历表
2020/12/03 Vue.js
[03:38]TI4西雅图DOTA2前线报道 71专访
2014/07/08 DOTA
[01:59]深扒TI7聊天轮盘语音出处 1
2017/05/11 DOTA
[01:21:36]CHAOS vs Alliacne 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/16 DOTA
详解Python编程中基本的数学计算使用
2016/02/04 Python
Python解决抛小球问题 求小球下落经历的距离之和示例
2018/02/01 Python
Python Pandas批量读取csv文件到dataframe的方法
2018/10/08 Python
python属于软件吗
2020/06/18 Python
Python3+RIDE+RobotFramework自动化测试框架搭建过程详解
2020/09/23 Python
python GUI计算器的实现
2020/10/09 Python
AmazeUI中模态框的实现
2020/08/19 HTML / CSS
Python里面search()和match()的区别
2016/09/21 面试题
物流管理专业毕业生求职信
2014/03/23 职场文书
销售行政专员岗位职责
2014/06/10 职场文书
英语系本科生求职信
2014/07/15 职场文书
2014年最新学校运动会广播稿
2014/09/17 职场文书
护士求职自荐信范文
2015/03/04 职场文书
五年级语文教学反思
2016/03/03 职场文书
手把手教你怎么用Python实现zip文件密码的破解
2021/05/27 Python