我正在尝试使用以下代码更改组合框的显示方式:
private void UpdateMapRoadPointList(List<GeographicAddress> plstMapRoadPointList)
{
cboFind.DataSource = plstMapRoadPointList;
cboFind.DisplayMember = "ShortCode";
cboFind.ValueMember = "";
}
GeographicAddress是一个具有ShortCode属性的类,该属性返回一个字符串:
internal string ShortCode
{
get { return Distance + Carriageway; }
}
但是,使用该应用程序时,无效值仍然来自GeographicAddress.ToString()。在调试时,看来cboFind.DisplayMember =“ ShortCode”没有任何作用!在执行该行之前和之后,DisplayMember为“”!
我想念什么?
最佳答案
public string ShortCode
{
get { return Distance + Carriageway; }
}
private void UpdateMapRoadPointList(List<GeographicAddress> plstMapRoadPointList)
{
cboFind.DataSource = plstMapRoadPointList;
cboFind.DisplayMember = "ShortCode";
}
这应该工作
将
ShortCode
属性设置为“公共”,否则将失败并使用GeographicAddress.ToString()
关于c# - 无法更改WinForms ComboBox中的DisplayMember,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/464911/