2014-03-27 41 views
0

假設我有一個像產量使用

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(AnObjectThatHasADataboundProperty.ThatProperty); 
  • 是你怎麼做到的?
  • 我從來沒有用過yield之前,這是一個應該使用產量應該是 的情況嗎?
+0

哪一個界面你有它是WPF還是Winform –

+5

使用一個ObservableCollection並綁定它。 – poke

+0

@ K.B WPF ...... – user1492051

回答

2

可以使用ObservableCollection<T>型直接使視圖更新時,您的收藏變化。例如,當你使用MVVM時,你的視圖模型可以暴露一個可觀察的集合,然後你可以從視圖綁定到它。

如果您然後從某處更新集合,則視圖也會自動更新。