2

我想我几乎想通了,但是我有一个错误:通过 DataSource 属性的绑定使绑定数据源中的第一个元素成为组合的默认值,但这对我不利,因为此默认值将传播到通过“SelectedValue”属性绑定的数据源的第一行,它会用错误的值覆盖正确的值。如何解决这个问题?

这是我的代码:(在北风数据库中,我希望能够从组合中选择将插入订单中的员工)

this.comboBox1.DataBindings.Add(new System.Windows.Forms.Binding("SelectedValue", this.ordersBindingSource, "EmployeeID", true));
this.comboBox1.DataSource = this.employeesBindingSource;
this.comboBox1.DisplayMember = "FullName";
this.comboBox1.ValueMember = "EmployeeID";
4

1 回答 1

0

我这样做:

DataRow dr=this.ordersBindingSource.Current;
  Combo.Text="";
  if(dr!=null)
  {
    if(dr[Combo.ValueMember]!=DBNull.Value)
    {
     Combo.SelectedValue=dr[Combo.ValueMember].ToString();        
     Combo.Text=dr[Combo.DisplayMember].ToString();         
    }
  }

在 recordChange 中执行此操作

于 2013-04-20T19:29:57.507 回答