在设定Combobox的ValueMember财产时,我遇到了一些问题。

线 comboBox1.ValueMember = "Code"; 打破我的代码。

这是我的代码:

form1.cs:

private void Form1_Load(object sender, EventArgs e) {  
    ...  
    ...      
    MAPList MAP = new MAPList();  
    comboBox1.DataSource = MAP.All;  
    comboBox1.ValueMember = "Code";  
    ...  
    ...  
}

maplist.cs:

public class MAPList {  
    public readonly List<MAP> All;

    public MAPList() {
        All = new List<MAP>();

        var MapData = // Getting map data

        foreach(MAP m in MapData) {
            All.Add(new Map(m.Name, m.Code));
        }
    }
}

MAP.CS:

public class MAP {  
    public readonly string Name;  
    public readonly string Code;

    public RadioCode(string name, string code) {
        Name = name;
        Code = code;
    }

    public override string ToString() {
        return String.Format("{0}: {1}", Name, Code);
    }
}
有帮助吗?

解决方案

尝试转换 代码 作为一个 财产 而不是成员,然后绑定

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top