C# 错误:复杂数据绑定接受IList或IListSource作为数据源
我试图在医院预约,当患者选择诊所时,应列出所选诊所的医生姓名 我在项目数据集向导的C# 错误:复杂数据绑定接受IList或IListSource作为数据源,c#,winforms,data-binding,combobox,C#,Winforms,Data Binding,Combobox,我试图在医院预约,当患者选择诊所时,应列出所选诊所的医生姓名 我在项目数据集向导的TableAdapter中进行查询 当我在Dataset中测试它,或者从ComboBox向导绑定它时,它工作正常 但是当我试图使用comboBox.DataSource更改comboBox的数据时,我得到了 此错误: 复杂数据绑定接受IList或 IListSource 这是我的密码: private void Reservation_Load(object sender, EventArgs e) { /
TableAdapter
中进行查询
当我在Dataset
中测试它,或者从ComboBox
向导绑定它时,它工作正常
但是当我试图使用comboBox.DataSource
更改comboBox的数据时,我得到了
此错误:
复杂数据绑定接受IList或
IListSource
这是我的密码:
private void Reservation_Load(object sender, EventArgs e)
{
// TODO: This line of code loads data into the 'mRMSDataSet.Departments' table. You can move, or remove it, as needed.
this.departmentsTableAdapter.FillByCLinics(this.mRMSDataSet.Departments);
}
private void clinicNameComboBox_SelectedIndexChanged(object sender, EventArgs e)
{
clinicDoctorsComboBox.DataSource = this.clinicDoctorsTableAdapter.FillByClinicDoctors(this.mRMSDataSet.ClinicDoctors, Convert.ToInt32(clinicNameComboBox.SelectedValue.ToString()));
clinicNameComboBox.DisplayMember = "empName";
clinicNameComboBox.ValueMember = "empId";
}
错误是不言自明的,并有记录在案。当您为组合框的
DataSource
属性赋值时,如果该值未实现IList
或IListSource
接口,您将收到一个ArgumentException
:
复杂数据绑定接受IList或
IListSource
在上面的代码中,您将Fill
方法(通常为int
)的结果分配给组合框的数据源
。相反,您应该首先填充数据表
,然后通过以下方式将数据表
分配给控件的数据源
:
this.someTableAdapter.Fill(this.someDataSet.SomeTable);
comboBox1.DataSource = this.someDataSet.SomeTable;
错误是不言自明的,并有记录在案。当您为组合框的DataSource
属性赋值时,如果该值未实现IList
或IListSource
接口,您将收到一个ArgumentException
:
复杂数据绑定接受IList或
IListSource
在上面的代码中,您将Fill
方法(通常为int
)的结果分配给组合框的数据源
。相反,您应该首先填充数据表
,然后通过以下方式将数据表
分配给控件的数据源
:
this.someTableAdapter.Fill(this.someDataSet.SomeTable);
comboBox1.DataSource = this.someDataSet.SomeTable;
您应该首先填写数据表
,然后将其分配给数据源
。目前,您已经为数据源
分配了一个整数。您应该首先填写数据表
,然后将其分配给数据源
。目前,您已经为数据源
分配了一个整数。没有必要因为问一个问题而责骂这个家伙。这是有文档记录的。这对你来说可能是不言自明的,但对提问的人来说显然不是。他可能读过文档,但不理解。@MikeMatter您可能不喜欢答案的语气,但我看不到答案中有任何粗鲁的地方,也看不到任何需要修改以使其更有用的地方。答案不是责备OP,而是试图指出这是一种预期的行为,错误消息中对此进行了明确解释。此外,答案试图添加更多解释,以说明引发异常的原因以及如何解决问题。@MikeMatter查看或。无需因为问问题而责骂该人。这是记录在案的。这对你来说可能是不言自明的,但对提问的人来说显然不是。他可能读过文档,但不理解。@MikeMatter您可能不喜欢答案的语气,但我看不到答案中有任何粗鲁的地方,也看不到任何需要修改以使其更有用的地方。答案不是责备OP,而是试图指出这是一种预期的行为,错误消息中对此进行了明确解释。此外,答案试图添加更多解释,以说明引发异常的原因以及如何解决问题。@MikeMatter查看或。