【发布时间】:2011-11-15 11:53:46
【问题描述】:
我有一个包含对象列表和组合框的 Windows 应用程序项目。如何以两种方式将此对象绑定到组合框。两种方式我的意思是当我在列表中添加一些元素时,组合框数据源应该自动改变。
【问题讨论】:
-
这是 WPF 吗?你有一些代码吗?
-
不,不是 WPF.. 只是 Windows 窗体类型的应用程序
标签: c# winforms data-binding
我有一个包含对象列表和组合框的 Windows 应用程序项目。如何以两种方式将此对象绑定到组合框。两种方式我的意思是当我在列表中添加一些元素时,组合框数据源应该自动改变。
【问题讨论】:
标签: c# winforms data-binding
List<T> 不会做这项工作,你想要BindingList<T>。
【讨论】:
也许您可以使用 ObservableCollection 作为 ListItems 源。然后,将新项目添加到此 Collection 中,它应该会更新 List 和原始 DataSource。
【讨论】:
我不得不同意 zapico - 稍微了解一下可观察的集合。 虽然,您总是可以只使用事件处理程序,例如选定的项目索引更改!?由于我目前正在学习 ASP,因此我不确定 winforms 上组合框的事件处理程序的正确名称。
【讨论】:
如果您的 Windows 应用程序使用“Windows 窗体”,则组合框有一个 DataSource 属性,您可以使用它来绑定到数据源和一个 DisplayMember 属性,您可以使用可用于在文本框中显示字段。可以在这里找到一个例子:
http://msdn.microsoft.com/en-us/library/w67sdsex.aspx
如果您的 Windows 应用程序使用 WPF,则 ComboBox 有一个 ItemsSource 属性和一个 SelectedItem 属性,可用于绑定。下面深入探讨如何在 WPF 中处理它:
【讨论】: