如何用索引列表填充下拉框
本文关键字:填充 列表 何用 索引 | 更新日期: 2023-09-27 18:30:09
希望这是一个快速的答案。C#和NEST的新手(从我之前的帖子中可以明显看出)。
我正在使用NEST查询我的ES实例,并构建了一个小型的winform应用程序来帮助完成任务。我想让winform上的一个组合框用集群中的索引名称动态填充。
到目前为止,我使用过:
var node = new Uri("http://xxx.xxx.x.xxx:xxx");
var settings = new ConnectionSettings(node);
var client = new ElasticClient(settings);
var myindexes = client.CatIndices();
我一辈子都不知道如何用存储在"myindexes"中的值填充组合框的值
我试过
combobox1.value = myindexes.ToList();
但却看不到如何更深入一层。
我知道这是一个简单的问题,但如果有人能抽出一些时间,我真的很感激你的帮助。
非常感谢您一如既往的帮助!
米克
假设myindexes是实现IList
或Array
的对象。您可以使用以下任一选项:
ComboBox.DataSource
this.comboBox1.DataSource = myindexes;
ComboBox.Items.AddRange
this.comboBox1.Items.AddRange(myindexes.Cast<object>().ToArray());
注意:
- 将为
ComboBox
中的项目显示的文本是ToString
方法的结果 - 如果使用
DataSource
方式显示复杂对象,则可以将DisplayMember
设置为要在ComboBox
中显示的复杂对象的属性之一 - 要设置为
DataSource
属性的对象应该是实现IList
接口或Array
的对象。如果不是,则应首先将其转换为预期的上述类型
您可以使用BindingSource
BindingSource bs = new BindingSource();
bs.DataSource = myindexes.ToList();
comboBox1.DataSource = bs;