ListBox.DisplayMember和内部属性

时间:2019-07-09 02:47:49

标签: c# windows winforms listbox bindinglist

我正在为我的大学的教授更新一些课堂项目。在更新过程中,我将建立一些示例,学生可以根据需要进行学习。但是,在此过程中我遇到了一个小障碍。

最近,我更新了所有重要的类属性,使其具有内部访问修饰符。通过这样做,我用来显示具有“内部属性”的所述类中的属性的ListBox不再显示值,而是显示整个对象路径。

例如,我具有以下类属性: internal string firstName {get; set;}

通过使用BindingList<Employee>将数据绑定到列表框,列表框的DisplayMember类似于“ Path.to.value”。而不是仅显示

如果我将属性切换回公开状态,则此功能可以很好地工作,但是如果将其标记为内部属性,则会引起问题。

员工全名属性定义

internal string fullName { get; set; }

Form1.cs中用于处理所有表单事件的代码实现

BindingList<Employee> bd = new BindingList<Employee>();

lsbx_empList.DataSource = bd;
lsbx_empList.DisplayMember = "fullName";

预期结果是显示“ fullName”属性,但实际结果显示的是fullName属性的对象路径。

0 个答案:

没有答案