如何设置这些值?我有一个DataTable,里面有我想在组合框中设置的所有数据,但我找不到如何设置它。
我试过了
ComboBox1.DataSource = dataTable;
ComboBox1.ValueMember = "id"; // --> once hes here, he just jumps out the method
ComboBox1.DisplayMember = "name";
字符串
没有编译错误,警告,什么都没有。就跳出来了
这是用于填充DataTable的查询
"Select * from \"Table\""
型
我检查了调试器,数据表已填充。列名为“id”和“name”。ComboBox为空。我第一次把它填满!
9条答案
按热度按时间xv8emn3q1#
您不应该按此顺序设置列表框和/或组合框的
datasource
字符串
相反,这是正确的顺序:
型
注:设置
datasource
应在最后一行。如果您先设置
datasource
,SelectedIndexChanged
事件将触发,您可能会收到强制转换错误或其他异常。vxf3dgd42#
使用键值对填充组合框
填充组合框的一个简洁的方法是将数据源设置为一个键值对列表。它还可以激发使用存储在某种列表中的数据:
字符串
也可以使用以下语法填充数据源:
型
该技术可以用多个列列表的更多属性名称来扩展。
可以直接使用已经是键值对的对象(如Dictionary项)
型
元组可以像这样初始化和使用
型
qlzsbp2j3#
字符串
dwbf0jvd4#
他们用绳子…
字符串
avwztpqn5#
我也有同样的问题。在我的例子中,SelectedIndexChanged事件触发并跳出该方法。尝试不要使用SelectedIndexChanged事件。或者类似这样的东西:
字符串
对我很有效。=)
at0kjp5o6#
字符串
72qzrwbm7#
字符串
f0ofjuux8#
你可以这样指定
字符串
xeufq47z9#
也许不完全是所描述的问题,但在我的情况下,类型名称显示在组合框中,而不是显示值,尽管一切似乎都连接正确。结果发现,类型的公共属性是在没有getter和setter的情况下定义的**!:)