今天还是没有做成功关于"DataGridViewComboBoxColumn"在有数据的列上下常显示。
首先谢谢微软中国社区的“我是风”和“绿水青山 ”两位朋友,共同探讨这个问题,我把今天的情况
再贴过来。。。
我的数据库是这样的
![](/images/cnblogs_com/slcfhr/64486/r_1.bmp)
我用下面的代码.运行时的情况是这样的
![](/images/cnblogs_com/slcfhr/64486/r_2.bmp)
实用时的代码
private void GridBind()
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
{
SqlConnection con = new SqlConnection("server=.;database=jxcbook;uid=sa;pwd=;");
SqlDataAdapter da = new SqlDataAdapter("select * from 商品清单", con);
DataTable dt = new DataTable();
DataSet ds = new DataSet();
da.Fill(ds, "商品清单");
dt = ds.Tables[0];
this.dataGridView1.DataSource = dt;
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
//string[] rowValues = new string[] { "包", "瓶", "盒", "带", "箱" };
DataGridViewComboBoxColumn combo = new DataGridViewComboBoxColumn();
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
combo.Items.AddRange(new object[]
{ "包", "瓶", "盒", "带", "箱" });
//combo.DataSource = rowValues;
combo.HeaderText = "单位";
combo.DataPropertyName = "单位";
dataGridView1.Columns.Add(combo);
![](/Images/OutliningIndicators/InBlock.gif)
}
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
现在情况有了点进展:
我把代码改为
DataGridViewComboBoxColumn combo = new DataGridViewComboBoxColumn();
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
combo.Items.AddRange(new object[]
{ "包", "瓶", "盒", "带", "箱" });// 不起作用了
combo.DataSource = dt;
combo.HeaderText = "单位";
combo.DataPropertyName = "单位";
combo.DisplayMember="单位";
combo.Items.Clear();//不起作用
//combo.Items.Add(
.) 现在不能用ADD方法了
DataGridViewComboBoxCell dstyle=new DataGridViewComboBoxCell();
dataGridView1.Columns.Add(combo);
也就是说把DataSource属性设成了DataGridView邦订的表然后再设置DisplayMembe属性,,这个时个
可以正常运行,,没有错误,,可新的问题有来了。。
下拉单中不是我想要的东西了。。如图:
![](/images/cnblogs_com/slcfhr/64486/r_3.bmp)
目前还没有找到办法解决它。。。
这是最郁闷的一天。/。。。。/。。/。/