【发布时间】:2011-11-08 15:56:21
【问题描述】:
我有以下设置:
public class Monitor
{
public ObservableCollection<People> listOfPeople = new ObservableCollection<People>();
public dosomework() {
Thread t = new ThreadStart(longwork);
t.Start();
}
public longwork() {
listOfPeople.Add(new People());
Thread.Sleep(10000);
}
}
public class People : INotifyPropertyChanged
{
int _age;
public int Age
{
get { return _age; }
set
{
_age = value;
Notify("Age");
}
}
}
public class UI : Window
{
Monitor md = new Monitor();
}
我想将数据网格绑定到可观察集合 (datagrid.ItemSource = md.listOfPeople),但是,我遇到了线程错误。另外,如果我不在新线程上做长时间的工作,那么 UI 只会在 longwork 函数完成后更新。我认为绑定可以避免这个问题。
任何帮助表示赞赏。
【问题讨论】:
标签: c# wpf multithreading binding collections