运行与LINQ to SQL的模型项目,并结合我的连击BindingSource的控件,我有两个组合框,首先显示的表给出了数据库表名(ID,表名)和第二应绑定到在第一个组合所选择的表,我想这样的代码:如何动态地改变其他组合框的值改变组合框
private void ComboBox1_TextChanged(object sender, EventArgs e)
{
if (ComboBox1.Text == "Customers")
{
var qry = (from u in dc.Customers
select u).ToList();
comboBox2.ValueMember = "CustomerID";
comboBox2.DisplayMember = "CompanyName";
comboBox2.DataSource = qry;
}
if (ComboBox1.Text == "Suppliers")
{
var qry = (from u in dc.Suppliers
select u).ToList();
comboBox2.ValueMember = "SupplierID";
comboBox2.DisplayMember = "CompanyName";
comboBox2.DataSource = qry;
}
}
有了上面的代码,我可以显示第一个组合项目,我也可以显示在默认情况下第二个组合的项目,但当我改变了第一个组合内容,我得到错误的comboBox2.ValueMember =“供应商ID”;信息:System.ArgumentException了未处理 消息=链接到不可能的新值构件。请如何将combobox2.ValueMember重置为新字段名称?
请告诉我场里面dc.Suppliers错误是扔N,因为供应商没有供应商ID在它 – HatSoft 2012-08-03 00:03:58
供应商是否有供应商ID字段中,可以确认在Northwind数据库样本。 – 2012-08-03 00:10:28