设置DataGridView的某个单元格为ComboBox
怎么将DataGridView的 某个单元格设为ComboBox的样式而不是整列都改变样式?
1、最简单的方法:利用DataGridView提供的DataGridViewComboBoxCell。
写个简单例子:
DataGridViewComboBoxCell cbCell = new DataGridViewComboBoxCell();
string[] jgStr = new string[] {"砖混", "框混", "全框架", "其它" };
cbCell.DataSource = jgStr;
cbCell.Value =“框混”;
dGModelInfo.Rows[rowCount].Cells["Value"] = cbCell;
效果如图:
2、这是网上看到别人提供的,这个是编辑单元格时显示出单元格的样式,据说它能显示出任何控件的样式。
private void dataGridView1_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
{
if (e.Control is DataGridViewTextBoxEditingControl)
{
TextBox textbox = (TextBox)e.Control;
// Panel p = (Panel)textbox.Parent; //找到当前的父控件,其实就是一个Panel,你将此Panel中的控件清空,然后你就可以在Panel中加入任何控件并随意布局了
Panel p = (Panel)e.Control.Parent;
p.Controls.Clear();
Button btn =new Button();
btn.Text="aaa";
btn.Click +=new EventHandler(btn_Click);
p.Controls.Add(btn);
}
}
http://hi.baidu.com/wangcaidpj219x/item/76afbb2b6d6493162a0f1c7b
另外附上几个关于DataGridView使用的链接:
DataGridView常见用法和FAQ汇总
DataGridView的一些技巧
DataGridView使用技巧大全
DataGridView 经典用法总结(上)--附有可下载的Demo
DatagridView 经典用法总结(中)--附有可下载Demo
设置DataGridView的某个单元格为ComboBox的更多相关文章
- WinForm中DataGridView复制选中单元格内容解决方案
WinForm中DataGridView鼠标选中单元格内容复制方案 1.CTR+C快捷键复制 前提:该控件ClipboardCopyMode属性设置值非Disable: 2.鼠标框选,自定义代码实现复 ...
- NPOI导出数据,设置格式,锁定单元格
代码包括: 1:导出多个sheet 2:设置单元格格式 3:合并单元格 4:下拉框选项 5:输入数字限制 6:锁定单元格 static void Main(string[] ar ...
- excel如何设置输入数字后单元格自动填充颜色
在使用excel的过程中,有时需要在输入数字时,突出显示这些单元格,突出显示可以用有填充颜色的单元格来表示.为了实现这样的效果,需要借助excel的条件格式. 工具/原料 电脑 Excel 2010 ...
- 【原创】有关Silverlight中“DataGrid中单元格动态绑定ComboBox单击时数据项莫名被清除 ”的解决方案及思路。
今天上班遇到一个很古怪的问题,搞了半天愣是没找到原因.是这样的,在Datagrid中有绑定一个ComboBox列,其不包含在 model数据中,而是单独在LoadingRow事件中去 从数据库拿数据绑 ...
- Swift - 设置网格UICollectionView的单元格间距
要设置单元格cell的间距(水平间距,垂直间距)可进行如下设置: 方法1:在storyboard中设置 选择Collection View后在面板里设置Min Spacing相关属性(这里也可以设置单 ...
- Windows Forms DataGridView中合并单元格
Windows Forms DataGridView 没有提供合并单元格的功能,要实现合并单元格的功能就要在CellPainting事件中使用Graphics.DrawLine和 Graphics.D ...
- DataGridView 获取当前单元格
获取DataGridview控件中的当前单元格,是通过DataGridview的Rows属性和Column属性的索引来取得的,他们的索引都是从0开始的. Private void datagridvi ...
- 设置table表格的单元格间距两种方式
table表格里设置单元格td之间的间距,通常用cellspacing设置单元格间距,有时候该属性可能无效,或需要用其他方式时,可用其他方式实现,例如在背景是白色背景的时候,设置单元格td的borde ...
- C# DataGridView中合并单元格
/// 合并GridView列中相同的行 /// /// GridView对象 /// 需要合并的列 public static void GroupRows(GridView GridView1, ...
随机推荐
- 阿里云windows 2012服务器部署java web程序教程
一:环境搭建 1.首先需要购买一个阿里云ECS服务器,购买时可以选择处理器核数以及内存大小(可以购买偏低配置,因为升级 方便) 2.购买后会自动创建一个实例,可以使用该实例中显示的公网地址在 ...
- Web 前端之HTML和CSS
Web 前端之HTML和CSS HTML被称为超文本标记语言(Hyper Text Markup Language),它不是一种编程语言,而是一种标记语言,标记语言是一套标记标签,HTML使用标记标签 ...
- SQL SERVER中如何在声明游标的语句中,用变量做表名
-- 因为定义游标所用的表名是变量,所以采用EXEC(定义语句) 的方式来声明游标set @StrSql='DECLARE Ba_Cursor CURSOR FOR (SELECT a.PhoneId ...
- 1280*720P和1920*1080P的视频在25帧30帧50帧60帧时的参数
- python 新手遇到的问题
作为新手,我把之前遇到的问题贴出来 错误提示1: TypeError: unbound method a() must be called with A instance as first argum ...
- Java源码之 java.util.concurrent 学习笔记01
准备花点时间看看 java.util.concurrent这个包的源代码,来提高自己对Java的认识,努力~~~ 参阅了@梧留柒的博客!边看源码,边通过前辈的博客学习! 包下的代码结构分类: 1.ja ...
- 【leetcode】Valid Parentheses
题目简述: Given a string containing just the characters '(', ')', '{', '}', '[' and ']', determine if th ...
- 高性能的JavaScript--数据访问(1)
写在前面 数据存储在哪里,关系到代码运行期间数据被检索到的速度.在JavaScript中,此问题相对简单,因为数据存储只有少量方式可供选择.正如其他语言那样,数据存储位置关系到访问速度.在JavaSc ...
- OpenGL帧缓存对象(FBO:Frame Buffer Object)(转载)
原文地址http://www.songho.ca/opengl/gl_fbo.html 但有改动. OpenGL Frame BufferObject(FBO) Overview: 在OpenGL渲染 ...
- Winform MDI窗体容器、权限、简单通讯
MDI窗体容器: 一般来说,窗体是顶级容器,不允许放在其他任何容器内,但是如果将某个窗体的IsMdiContainer属性设置为True,那此窗体就会成为窗体容器,可以在其中放入其他窗体 在内部的窗体 ...