在一个漫长的过程中产生使用
本文关键字:过程中 漫长的 一个 | 更新日期: 2023-09-27 17:54:37
假设我有一个类似
的函数public IList<type> Fetch()
{
IList<type> list = new List<type>();
//here comes a really long process and an item gets added to the list every few seconds
return list;
}
现在如果我想使用这个函数作为下面的
//in a seperate thread
AnObjectThatHasADataboundProperty.ThatProperty = Fetch();
上面将不得不等待Fetch()函数返回一个值,但我想更新我的视图,每当一个项目被添加,所以我认为我应该发送一个引用到数据绑定属性的函数,例如,它看起来像:
Fetch(AnObjectThatHasADataboundProperty.ThatProperty);
- 你会这么做吗?
- 我以前从未使用过
yield
,这是产量应该的情况吗被使用?
您可以使用ObservableCollection<T>
类型在您的集合更改时直接更新视图。例如,当你使用MVVM时,你的视图模型可以公开一个可观察对象集合,然后你可以直接从视图绑定到它。
如果你从某处更新了集合,视图也会自动更新。