问题描述
我正在尝试使用 ListBox.DataSource = ObservableCollection,但是我不知道如何在我的 OC 更新时让列表框自动更新.我可以在 OC 上挂钩 CollectionChanged 事件,但是我需要对列表框做什么才能使其更新?
I'm trying to use a ListBox.DataSource = ObservableCollection, however I can't figure out how to have the listbox automatically update when my OC updates. I can hook the CollectionChanged event on the OC, however what do I need to do to the listbox to make it update?
推荐答案
根据您的问题,听起来您正在尝试在 WinForms 应用程序中使用 ObservableCollection
.
Based on your question, it sounds like you're trying to use ObservableCollection<T>
in a WinForms application.
ObservableCollection<T>
主要用于 WPF 开发.在 WinForms 中,控件会随着集合的变化而自动更新,您的集合需要实现 IBindingList
.
ObservableCollection<T>
is primarily used in WPF development. In WinForms, for the control be automatically updates as the collection changes your collection needs to implement IBindingList
.
最简单的解决方案是使用 BindingList<T>
而不是 ObservableCollection<T>
.之后,您的控件应该随着集合的变化而更新.
The easiest solution is to use BindingList<T>
instead of ObservableCollection<T>
. After that, your controls should update as the collection changes.
MSDN:BindingList(T) 类
这篇关于C# ListBox ObservableCollection<T>的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!