我的组合框有问题,我试图用数据库中的一些值填充它,一切正常,除了这个代码的最后一行(其中包含ValueMember)在免费翻译中生成UnknownException它说它无法为“表”字段创建子元素列表。
connection = new MySqlConnection(connectionString);
connection.Open();
MySqlDataAdapter mda = new MySqlDataAdapter(query, connection);
DataSet my_dataset = new DataSet("dataset");
mda.Fill(my_dataset);
connection.Close();
DataViewManager dvm_cb2 = my_dataset.DefaultViewManager;
my_combobox.DataSource = dvm_cb2;
my_combobox.DisplayMember = table + "." + name;
my_combobox.ValueMember = table + "." + my_id;
任何想法,可能是什么问题?
答案 0 :(得分:1)
DisplayMember和ValueMember应该是对象属性的字符串repreentations
例如,如果你有一个以下对象的集合
public class MyObject
{
public string ItemId = "";
public string DisplayValue = "";
}
所以你制作了一个对象的集合
List<MyObject> list = new List<MyObject>();
然后将此属性和属性分配给组合框
combobox.DataSource = list ;
combobox.DisplayMember = "DisplayValue";
combobox.ValueMember = "ItemId ";
这应该有效。
答案 1 :(得分:0)
试试这个
my_combobox.DisplayMember = "fieldname";
my_combobox.ValueMember = "fieldname";
my_combobox.DataSource = dvm_cb2;