2013-04-04 66 views
2

我正在用WPF中的Sasha Barber的MVVM的Cinch框架開發應用程序。此應用程序顯示兩個選項卡MainWindowViewModel啓動了一個後臺工作器,用於偵聽傳入的套接字連接。如果客戶端通過套接字連接連接到應用程序,應用程序應該顯示另一個選項卡。 我設置了一切,但是當我嘗試將新的Worskspace添加到Views集合時,我收到一個錯誤,它只能在調度程序線程中完成,但MainWindowViewModel中沒有調度程序。 所以這裏是我的問題:我如何將這個工作區添加到視圖集合?異步添加MVVM中的選項卡

問候和感謝 Knutman

回答

0

你可以用下面的實施你的虛擬機的基類添加屬性。

public class ViewModelBase : .... 
{ 
    protected Dispatcher Dispatcher 
    { 
     get { return Application.Current.Dispatcher; } 
    } 
} 

現在你在虛擬機中有一個調度器。欲瞭解更多信息,請看看here。或者您只需在您需要的地方使用Application.Current.Dispatcher

+0

謝謝DHN,你讓我的一天。 – 2013-04-05 11:01:29

+0

不客氣。請注意,如果帖子回答你的問題,它應該被標記爲一個。 ; O) – DHN 2013-04-05 19:02:22