'无法绑定到新值成员。参数名称:newDisplayMember'。

时间:2013-07-09 16:37:13

标签: exception combobox datasource datagridviewcombobox

我在Visual Studio 2010中使用C#。我有2个组合框从数据库中提取数据。代码看起来像这样:

        cbo1.DisplayMember = "Name";
        cbo1.ValueMember = "HROfficeLocationID";
        cbo1.DataSource = offices;
        cbo2.DisplayMember = "Name";
        cbo2.ValueMember = "HROfficeLocationID";
        cbo2.DataSource = offices;

我一直得到这个例外:'无法绑定到新的值成员。参数名称:newDisplayMember'。我搜索了一下然后重新组织了代码行,以便cbo.DataSource出现在.DisplayMember和.ValueMember之前。它最终看起来像这样:

       cbo1.DataSource = offices;
       cbo1.DisplayMember = "Name";
       cbo1.ValueMember = "HROfficeLocationID";
       cbo2.DataSource = offices;
       cbo2.DisplayMember = "Name";
       cbo2.ValueMember = "HROfficeLocationID";

异常消失了。只是想我会分享。

3 个答案:

答案 0 :(得分:3)

当我使用的内部类具有“内部”变量时,我发生了这种情况。将它们改为“公开”,它运作良好。

答案 1 :(得分:1)

指定为属性,而不是作为类中的变量,例如

public class projectData
{
     public string ProjName { get; set; }
     public string ProjId { get; set; }
}


List<projectData> projects = getProjects();


lBoxFDTProjects.DataSource = projects;

lBoxFDTProjects.ValueMember = "ProjId";
lBoxFDTProjects.DisplayMember = "ProjName";

答案 2 :(得分:0)

某些属性属性也会导致此错误,例如 [可浏览(错误)]