WinForms DevExpress ListBoxControl绑定List无显示文本问题求助
问题解决:DevExpress ListBoxControl绑定List后无文本显示
嘿,我一眼就揪出问题所在啦!你遇到的这个情况,核心原因是DevExpress的数据绑定控件只支持绑定到属性,不支持直接绑定字段。
看你的代码,Xml类里定义的都是公共字段:
public class Xml { public int Id; public string Name1; public string Name2; }
而ListBoxControl的DisplayMember需要指定的是类的属性名称,不是字段名称。这就导致控件能识别到数据源里的条目数量(所以你能正常切换选中状态),但没法读取到要显示的文本内容。
解决方案:把字段改成属性
只需要把Xml类的字段修改为带getter和setter的属性即可:
public class Xml { public int Id { get; set; } public string Name1 { get; set; } public string Name2 { get; set; } }
修改完成后重新运行程序,ListBoxControl就能通过DisplayMember="Name1"正确读取到Name1属性的值,显示对应的文本了。
另外补充一句:从你描述的“可通过鼠标或键盘切换3条数据的选中状态”来看,你的数据源绑定逻辑(_listBoxControl.DataSource = _listXml;)是完全没问题的,只需要修复类的成员定义就搞定啦。
内容的提问来源于stack exchange,提问作者Tomasz Szymański
相关产品推荐
相关产品推荐

