【问题标题】:How to set data source of hosted combobox如何设置托管组合框的数据源
【发布时间】:2012-10-16 17:29:11
【问题描述】:

我正在使用ToolStripControlHost 来弹出各种其他控件,例如数据网格视图、列表视图等。如何将数据源分配给以这种方式托管的组合框。使用数据视图、数据表等设置数据源不起作用。有谁知道这个秘密还是这不可能?

【问题讨论】:

  • 您能否粘贴一些示例代码并准确解释您期望发生的情况以及实际发生的情况?

标签: winforms combobox


【解决方案1】:

ToolStripComboBox 不支持数据绑定,因此您需要手动添加项目。幸运的是,组合框在表单上有一个名称,因此您可以这样做:

toolStripComboBox.Items.AddRange(
    new object[]
    {
        "Value 1",
        "Value 2",
        etc.
    }

我不知道你给组合框起什么名字,但只要把这个名字代替toolStripComboBox就行了。

ComboBox 属性更新

如果您想通过 ComboBox 属性进行绑定,那么您应该能够执行以下操作:

var cb = toolStripComboBox.ComboBox;
cb.ValueMember = "some field or property";
cb.DisplayMember = "some field or property";
cb.DataSource = {some IEnumerable<T> or DataView or some other sort of bindable list}

【讨论】:

  • 使用组合框而不是 ToolStripComboBox。实际上尝试了 ToolStripComboxBox,它也不起作用。 toolstripcomboxbox 有一个组合框属性,它将绑定在表单上,​​但我可以在下拉/弹出窗口中找到如何操作
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-03-11
  • 2016-03-25
  • 2021-01-10
  • 2012-07-24
  • 2016-07-30
  • 1970-01-01
  • 2019-10-10
相关资源
最近更新 更多