C#中如何将datagridview中某一列的值不重复的显示到一个combobox中

2024-11-08 17:59:58
推荐回答(4个)
回答1:

以下方法是实现将界面上的dataGridView1控件中第一列的值填充到界面上的comboBox控件中的,,重复的值是不会添加的。在窗体的启动事件中调用此方法就可以了,如果是取其它列的值,修改“Cells[0]”的值就可以了;
private void getName()
{
List lsName=new List;
for(int i=0;i {
string name=this.dataGridView1.Rows[i].Cells[0].Value.ToString();
if(lsName.Contains(name))
{
continue;
}
else
{
lsName.Add(name);
}
}
this.comboBox.DataSource=lsName;
}

回答2:

把datagridview的数据付给datatable,然后绑定给combox。
comboBox1.DataSource = dt;
comboBox1.DisplayMember = "name"; //要显示的字段名
//如果是Web程序的话,加上comboBox1.DataBind();

回答3:

读取datagridview的数据源数据,如是DataTable,使用DataTable的Select方法找到存放名字的字段内容。过滤重复的的绑定到ComboBox中。

回答4:

你可以用combobox的dropdown和dropdownclosed两个事件去将数据绑定到控件中,这个倒是做过