datagridview问题 急,在线等
截图如下:
http://www.globalmarket.com/gb/ls/combo.jpg
datagridview可以直接添加数据更新.
前5列是来自gx表的,最后一列是来自bm表的,我只想更新前5列(就是表gx).但第五列不能乱填,所填的资料必须最后一列combobox中存在的
现在不知道该如何控制第5列的资料
两个表
工序表gx
id name bm(所属部门) ...
1 裁剪 设计部 ...
2 制革 技术部 ...
.....
部门表bm
id name
1 设计部
2 技术部
3 商展部
.....
我把工序表做成datatable绑定
到datagridview中
显示结果是直接读取所有字段,
但我想所属部门字段是
combobox下拉,并且下拉选项是
bm表的选项
该如何做?
我就是搞不懂那个读取另外一
个数据表的combobox列如何存
到工序表中
------解决方案--------------------刚刚解决的一个一样的问题:
//combobox数据源。。。
DataTable dt = new DataTable();
dt.Columns.Add(new DataColumn( "Sex ", typeof(string)));
DataRow row = dt.NewRow();
row[0] = "man ";
dt.Rows.Add(row);
DataRow row2 = dt.NewRow();
row2[0] = "woman ";
dt.Rows.Add(row2);
dt.AcceptChanges();
//DataGridView列
DataGridViewComboBoxColumn cbc = new DataGridViewComboBoxColumn();
cbc.DataSource = dt;
cbc.DisplayMember = "Sex ";
cbc.ValueMember = "Sex ";
cbc.DataPropertyName = "Sex ";
cbc.HeaderText = "Sex ";
DataGridViewTextBoxColumn cid = new DataGridViewTextBoxColumn();
cid.HeaderText = "ID ";
cid.DataPropertyName= "ID ";
DataGridViewTextBoxColumn cname = new DataGridViewTextBoxColumn();
cname.HeaderText = "Name ";
cname.DataPropertyName = "Name ";
dataGridView1.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {cid, cname, cbc});
//DataGridView数据源
DataTable dtSource = new DataTable();
dtSource.Columns.Add( "ID ", typeof(Int32));
dtSource.Columns.Add( "Name ", typeof(string));
dtSource.Columns.Add( "Sex ", typeof(string));
DataRow r1 = dtSource.NewRow();
r1[0] = 1;
r1[1] = "test ";
dtSource.Rows.Add(r1);
dtSource.AcceptChanges();
dataGridView1.DataSource = dtSource;