14 个解决方案
#1
难道没人知道?
#2
难道真的没有人用过DataGridViewComboBoxColumn吗??
#3
哎,看来真是没人知道了。
本以为很简单的一个事情,真没想到大家都不知道。
可能是微软没有提供这个接口呢??
本以为很简单的一个事情,真没想到大家都不知道。
可能是微软没有提供这个接口呢??
#4
只能一行一行的设置,不能对整列设制模任值
#5
请问如何一行一行的设置??
#6
如果你有绑定到数据源如datatable 设置其对应列的默认值 应该就可以
#7
绑定到datatable,是什么数据结构形成了DataGridViewComboBoxColumn?
我的DataGridViewComboBoxColumn是手动插入的。不知楼上有和高见,可以详细一点儿。
我的DataGridViewComboBoxColumn是手动插入的。不知楼上有和高见,可以详细一点儿。
#8
可以设定comboBoxColumn的datasource,displaymember,valuemember和dataPropertyName,其中datapropertyName就是默认值
#9
//虚拟模式下可以处理DataGridView的NewRowNeeded为其赋初始值
//private void blackSheet DataGridView_ NewRowNeeded(object sender, DataGridViewRowEventArgs e)
//{
// DataRowView currentRow = blackSheetBindingSource.Current as DataRowView;
// currentRow["typeID"] = (int)this.typeFilter.Tag;
// 。。。。。。
//}
//常规模式下处理BindingSource的AddingNew为其赋初始值
//private void blackSheet BindingSource_ AddingNew(object sender, AddingNewEventArgs e)
//{
// BindingSource bs = (BindingSource)sender;
// DataView view = (DataView)bs.List;
// DataRowView row = view.AddNew();
// row["typeID"] = (int)this.typeFilter.Tag;
// if(bs.Count == 1)
// {
// bs.EndEdit();
// }
// bs.MoveLast();
// e.NewObject = row;
// }
//}
//private void blackSheet DataGridView_ NewRowNeeded(object sender, DataGridViewRowEventArgs e)
//{
// DataRowView currentRow = blackSheetBindingSource.Current as DataRowView;
// currentRow["typeID"] = (int)this.typeFilter.Tag;
// 。。。。。。
//}
//常规模式下处理BindingSource的AddingNew为其赋初始值
//private void blackSheet BindingSource_ AddingNew(object sender, AddingNewEventArgs e)
//{
// BindingSource bs = (BindingSource)sender;
// DataView view = (DataView)bs.List;
// DataRowView row = view.AddNew();
// row["typeID"] = (int)this.typeFilter.Tag;
// if(bs.Count == 1)
// {
// bs.EndEdit();
// }
// bs.MoveLast();
// e.NewObject = row;
// }
//}
#10
还是不行,算了,可能这个控件不能实现我要的功能。
#11
this.dataGridView1.ColumnCount = 2;
this.dataGridView1.RowCount = 5;
List<ComItem> comItems = new List<ComItem>();
comItems.Add(new ComItem("text1","value1"));
comItems.Add(new ComItem("text2", "value2"));
comItems.Add(new ComItem("text3", "value3"));
DataGridViewComboBoxCell combo = new DataGridViewComboBoxCell();
combo.DataSource = comItems;
combo.DisplayMember = "Text";
combo.ValueMember = "Value";
combo.Value = "value2"; // 这里可以算是默认值。
this.dataGridView1.Rows[1].Cells[1] = combo;
this.dataGridView1.RowCount = 5;
List<ComItem> comItems = new List<ComItem>();
comItems.Add(new ComItem("text1","value1"));
comItems.Add(new ComItem("text2", "value2"));
comItems.Add(new ComItem("text3", "value3"));
DataGridViewComboBoxCell combo = new DataGridViewComboBoxCell();
combo.DataSource = comItems;
combo.DisplayMember = "Text";
combo.ValueMember = "Value";
combo.Value = "value2"; // 这里可以算是默认值。
this.dataGridView1.Rows[1].Cells[1] = combo;
#12
贡献一下:
dataGV.DataSource =ds.Table[0];//数据源
//关键代码,其中Columns[2]为你的DataGridViewComboBoxColumn所在列
((DataGridViewComboBoxColumn)datagridview1.Columns[2]).DefaultCellStyle.NullValue = "--请选择--";
dataGV.DataSource =ds.Table[0];//数据源
//关键代码,其中Columns[2]为你的DataGridViewComboBoxColumn所在列
((DataGridViewComboBoxColumn)datagridview1.Columns[2]).DefaultCellStyle.NullValue = "--请选择--";
#13
不好意思,打错字
将dataGV.DataSource =ds.Table[0];//数据源
改为
datagridview1.DataSource =ds.Table[0];//数据源
将dataGV.DataSource =ds.Table[0];//数据源
改为
datagridview1.DataSource =ds.Table[0];//数据源
#14
11楼正解~
#1
难道没人知道?
#2
难道真的没有人用过DataGridViewComboBoxColumn吗??
#3
哎,看来真是没人知道了。
本以为很简单的一个事情,真没想到大家都不知道。
可能是微软没有提供这个接口呢??
本以为很简单的一个事情,真没想到大家都不知道。
可能是微软没有提供这个接口呢??
#4
只能一行一行的设置,不能对整列设制模任值
#5
请问如何一行一行的设置??
#6
如果你有绑定到数据源如datatable 设置其对应列的默认值 应该就可以
#7
绑定到datatable,是什么数据结构形成了DataGridViewComboBoxColumn?
我的DataGridViewComboBoxColumn是手动插入的。不知楼上有和高见,可以详细一点儿。
我的DataGridViewComboBoxColumn是手动插入的。不知楼上有和高见,可以详细一点儿。
#8
可以设定comboBoxColumn的datasource,displaymember,valuemember和dataPropertyName,其中datapropertyName就是默认值
#9
//虚拟模式下可以处理DataGridView的NewRowNeeded为其赋初始值
//private void blackSheet DataGridView_ NewRowNeeded(object sender, DataGridViewRowEventArgs e)
//{
// DataRowView currentRow = blackSheetBindingSource.Current as DataRowView;
// currentRow["typeID"] = (int)this.typeFilter.Tag;
// 。。。。。。
//}
//常规模式下处理BindingSource的AddingNew为其赋初始值
//private void blackSheet BindingSource_ AddingNew(object sender, AddingNewEventArgs e)
//{
// BindingSource bs = (BindingSource)sender;
// DataView view = (DataView)bs.List;
// DataRowView row = view.AddNew();
// row["typeID"] = (int)this.typeFilter.Tag;
// if(bs.Count == 1)
// {
// bs.EndEdit();
// }
// bs.MoveLast();
// e.NewObject = row;
// }
//}
//private void blackSheet DataGridView_ NewRowNeeded(object sender, DataGridViewRowEventArgs e)
//{
// DataRowView currentRow = blackSheetBindingSource.Current as DataRowView;
// currentRow["typeID"] = (int)this.typeFilter.Tag;
// 。。。。。。
//}
//常规模式下处理BindingSource的AddingNew为其赋初始值
//private void blackSheet BindingSource_ AddingNew(object sender, AddingNewEventArgs e)
//{
// BindingSource bs = (BindingSource)sender;
// DataView view = (DataView)bs.List;
// DataRowView row = view.AddNew();
// row["typeID"] = (int)this.typeFilter.Tag;
// if(bs.Count == 1)
// {
// bs.EndEdit();
// }
// bs.MoveLast();
// e.NewObject = row;
// }
//}
#10
还是不行,算了,可能这个控件不能实现我要的功能。
#11
this.dataGridView1.ColumnCount = 2;
this.dataGridView1.RowCount = 5;
List<ComItem> comItems = new List<ComItem>();
comItems.Add(new ComItem("text1","value1"));
comItems.Add(new ComItem("text2", "value2"));
comItems.Add(new ComItem("text3", "value3"));
DataGridViewComboBoxCell combo = new DataGridViewComboBoxCell();
combo.DataSource = comItems;
combo.DisplayMember = "Text";
combo.ValueMember = "Value";
combo.Value = "value2"; // 这里可以算是默认值。
this.dataGridView1.Rows[1].Cells[1] = combo;
this.dataGridView1.RowCount = 5;
List<ComItem> comItems = new List<ComItem>();
comItems.Add(new ComItem("text1","value1"));
comItems.Add(new ComItem("text2", "value2"));
comItems.Add(new ComItem("text3", "value3"));
DataGridViewComboBoxCell combo = new DataGridViewComboBoxCell();
combo.DataSource = comItems;
combo.DisplayMember = "Text";
combo.ValueMember = "Value";
combo.Value = "value2"; // 这里可以算是默认值。
this.dataGridView1.Rows[1].Cells[1] = combo;
#12
贡献一下:
dataGV.DataSource =ds.Table[0];//数据源
//关键代码,其中Columns[2]为你的DataGridViewComboBoxColumn所在列
((DataGridViewComboBoxColumn)datagridview1.Columns[2]).DefaultCellStyle.NullValue = "--请选择--";
dataGV.DataSource =ds.Table[0];//数据源
//关键代码,其中Columns[2]为你的DataGridViewComboBoxColumn所在列
((DataGridViewComboBoxColumn)datagridview1.Columns[2]).DefaultCellStyle.NullValue = "--请选择--";
#13
不好意思,打错字
将dataGV.DataSource =ds.Table[0];//数据源
改为
datagridview1.DataSource =ds.Table[0];//数据源
将dataGV.DataSource =ds.Table[0];//数据源
改为
datagridview1.DataSource =ds.Table[0];//数据源
#14
11楼正解~