C#在dataGridView中动态添加一个combox

问题描述

急求大神!!我在dataGridVIew1的某一列中动态添加一个combox,然后出现下面的情况:

解决方案

解决方案二:
publicComboBoxmycombo=newComboBox();//全局变量....form_load(...){mycombo.Name="mycombo";mycombo.Items.Clear();mycombo.Items.Add("三甲");mycombo.Items.Add("二甲");mycombo.Items.Add("一甲");mycombo.Items.Add("三乙");mycombo.Items.Add("二乙");mycombo.Items.Add("一乙");mycombo.Items.Add("三丙");mycombo.Items.Add("二丙");mycombo.Items.Add("一丙");mycombo.TextChanged+=newEventHandler(Mycombo_changed);//为生成的组合框控件,添加文本改变事件处理函数dataGridView1.Controls.Add(mycombo);//把组合框添加到dataGridView1中}//当文本改变时,把dataGridView当前单元格内容设为组合框的内容privatevoidMycombo_changed(objectsender,EventArgse){if(dataGridView1.CurrentCell.ColumnIndex==3)dataGridView1.CurrentCell.Value=mycombo.Text;}//为dataGridView控件的单元格获得焦点事件//即当医院等级列的单元格获得焦点时,显示生成的组合框privatevoiddataGirdView1_cellEnter(objectsender,DataGridViewCellEventArgse){if(e.ColumnIndex==3){mycombo.Visible=false;mycombo.Left=dataGridView1.GetCellDisplayRectangle(3,dataGridView1.CurrentRow.Index,true).Left;//横坐标mycombo.Top=dataGridView1.GetCellDisplayRectangle(3,dataGridView1.CurrentRow.Index,true).Top;//纵坐标mycombo.Text=dataGridView1.CurrentCell.Value.ToString()+"";//组合框的文本为单元格的值mycombo.Visible=true;//组合框显示}else{mycombo.Visible=false;}}//单击dataGridView控件,组合框隐藏privatevoiddataGridView1_Click(objectsender,EventArgse){mycombo.Visible=false;}
解决方案三:
引用楼主liu_ing的回复:

急求大神!!我在dataGridVIew1的某一列中动态添加一个combox,然后出现下面的情况:

为什么会出现这种情况啊??各位大神!!是这个函数出错了吗??privatevoiddataGirdView1_cellEnter(objectsender,DataGridViewCellEventArgse){}
解决方案四:
DataGridView中的组合框为DataGridViewComboBoxCell,动态添加很简单,参考以下代码privatevoidButton1_Click(objectsender,EventArgse){DataGridViewComboBoxCellnewComboBoxCell=newDataGridViewComboBoxCell();newComboBoxCell.Items.AddRange({"选项1","选项2","选项3"});DataGridViewRownewRow=newDataGridViewRow();newRow.Cells.Add(newComboBoxCell);DataGridView1.Rows.Add(newRow);}

解决方案五:
引用3楼hironpan的回复:

DataGridView中的组合框为DataGridViewComboBoxCell,动态添加很简单,参考以下代码privatevoidButton1_Click(objectsender,EventArgse){DataGridViewComboBoxCellnewComboBoxCell=newDataGridViewComboBoxCell();newComboBoxCell.Items.AddRange({"选项1","选项2","选项3"});DataGridViewRownewRow=newDataGridViewRow();newRow.Cells.Add(newComboBoxCell);DataGridView1.Rows.Add(newRow);}

这是给行添加combox的。。可我只想要给指定的一列添加
解决方案六:
引用4楼liu_ing的回复:

Quote: 引用3楼hironpan的回复:
DataGridView中的组合框为DataGridViewComboBoxCell,动态添加很简单,参考以下代码privatevoidButton1_Click(objectsender,EventArgse){DataGridViewComboBoxCellnewComboBoxCell=newDataGridViewComboBoxCell();newComboBoxCell.Items.AddRange({"选项1","选项2","选项3"});DataGridViewRownewRow=newDataGridViewRow();newRow.Cells.Add(newComboBoxCell);DataGridView1.Rows.Add(newRow);}

这是给行添加combox的。。可我只想要给指定的一列添加

方法1、用DataGridViewComboBoxColumn方法2、同以上代码,可以在任意行的任意列添加
解决方案七:
DataGridViewComboBoxCellcm=newDataGridViewComboBoxCell();DataGridViewColumnnewcolumn=newDataGridViewColumn();怎样把列的单元格弄成DataGridViewComboBoxCell??查资料,找不到。。然后是把该列添加到指定的列中吗??怎么弄啊。。我还是菜鸟。。
解决方案八:
引用6楼liu_ing的回复:

DataGridViewComboBoxCellcm=newDataGridViewComboBoxCell();DataGridViewColumnnewcolumn=newDataGridViewColumn();怎样把列的单元格弄成DataGridViewComboBoxCell??查资料,找不到。。然后是把该列添加到指定的列中吗??怎么弄啊。。我还是菜鸟。。

this.dataGridView1.Columns.Add(cm);这样

时间: 2024-10-02 06:05:32

C#在dataGridView中动态添加一个combox的相关文章

extjs4-请问如何在window中动态添加一个列表

问题描述 请问如何在window中动态添加一个列表 我现在要在window中动态的添加一个grid, 前面有一些逻辑判断, 请问各位当满足特定条件下如何能动态的添加一个grid在window中 解决方案 用createwindow函数 也可以事先添加好,但是设置为隐藏,然后直接显示

combox-C#或者DEV控件高手进,求助大神!呀,gridview中动态添加COMBOX后出现问题

问题描述 C#或者DEV控件高手进,求助大神!呀,gridview中动态添加COMBOX后出现问题 步骤1:我定义一个全局的COMBOX控件变量: 步骤1:我为GRIDVIEW动态添加了一列,将这一列设置我步骤1中的COMBOX: 步骤2:我为这个COMBOX添加click事件,在事件中我读取GRIDVIEW中的focusROW,读取某一列,判断该列的值来动态为COMBOX添加ITEM; 问题:在click事件中,每次都能正确的获取focusROW,也能为combox添加ITEM,但是就是COM

c# listview或datagridview显示动态添加的数据,效果是局部(刷新)添加数据,添加新数据同时对操作原显示数据无影响

问题描述 c#listview或datagridview显示动态添加的数据,效果是局部(刷新)添加数据,添加新数据同时对操作原显示数据无影响 解决方案 解决方案二:你说的添加新数据是重新绑定,还是在原基础上增加行?解决方案三:引用1楼dongxinxi的回复: 你说的添加新数据是重新绑定,还是在原基础上增加行? 增加行例如:listview展示如下:1abc2def3ghi一段时间数据库有新数据1abc2def3ghi4jkl5mnp解决方案四:无非就是比较两条数据是非"一样"嘛傻瓜式

如何获取布局中动态添加的spinner的内容?

问题描述 如何获取布局中动态添加的spinner的内容? 现在有父布局LinearLayout id为payItemts 有子布局LinearLayout id为payItem 子布局payItem中包含一个id为accountName的spinner.一个id为payMoney的EditText 在activity中,通过有一个按钮btA,可以动态的往父布局中添加子布局,每点击一次,动态添加一个item 有一个btB,如何通过点击btB获取Activity中所有Spinner的内容?(spin

在eclips中如何添加一个已经存在的工程进来

问题描述 在eclipes中想添加一个已经存在的web项目进来,用eclipes创建了一个新的动态的web项目,找不到一个地方可以打开已经有web项目的地方,又不能用import,因为该项目不是用eclipes创建的,我只要把这个项目的文件添加进来,该如何是好,请帮忙,谢谢了 问题补充:蔡华江 写道 解决方案 实在没办法,就建一个Web工程,将src目录和WebContext目录直接拷贝过来,也很方便

dit ext控件-android开发中EditText中动态添加别的控件(图片,按钮,视频)

问题描述 android开发中EditText中动态添加别的控件(图片,按钮,视频) 我想在EditText输入框中不仅仅输入文字,还想输入图片,图片的功能我已经实现了,怎么往里面加入一个按钮,或者加入一个VideoView控件用来播放视频?哪位大牛会啊,给个思路也行啊 解决方案 Android Edittext 添加按钮android开发EditText中添加图片 解决方案二: 组织成html字符串,textview可以解析 解决方案三: 用ImageSpan和SpannableString

Android viewpager中动态添加view并实现伪无限循环的方法_Android

本文实例讲述了Android viewpager中动态添加view并实现伪无限循环的方法.分享给大家供大家参考,具体如下: viewpager的使用,大家都熟悉,它可以实现页面之间左右滑动的切换,这里有一个需求,就是viewpager里面加载的页数不是确定的,而是根据数据的多少来确定的.常见的应用就是在一个新闻的详细页面中,显示与此新闻有关的图片. 下面我们来看一下代码: activity_main.xml <RelativeLayout xmlns:android="http://sch

html页面下拉列表中动态添加后台数据(格式化数据,显示出数据的层次感)

html页面下拉列表中动态添加后台数据(格式化数据,显示出数据的层次感) 效果图:     运行原理和技术: 当页面加载完毕,利用jquery向后台发送ajax请求,去后台拼接<select></select>中的option字符串.让后将字符串响应回来,动态添加到<select>中.其中的字符串中包含了后台的数据. 页面js代码:   1 <script type="text/javascript"> 2 //加载部门 3 functi

Android viewpager中动态添加view并实现伪无限循环的方法

本文实例讲述了Android viewpager中动态添加view并实现伪无限循环的方法.分享给大家供大家参考,具体如下: viewpager的使用,大家都熟悉,它可以实现页面之间左右滑动的切换,这里有一个需求,就是viewpager里面加载的页数不是确定的,而是根据数据的多少来确定的.常见的应用就是在一个新闻的详细页面中,显示与此新闻有关的图片. 下面我们来看一下代码: activity_main.xml <RelativeLayout xmlns:android="http://sch