2013-08-19 30 views
1

我使用的是調度員在後面的我的WPF代碼之一,但現在落後移動的所有代碼MVVM模式與下面的代碼:調度員在WPF ViewModel類

this.Dispatcher.BeginInvoke(new Action(() => CallEmployee())); 
Thread.Sleep(100000); 

但同樣不能從一個ViewModel類文件。我試過

System.Windows.Threading.CurrentDispatcher.BeginInvoke(new Action(() => CallEmployee())); 
Thread.Sleep(100000); 

但它沒有調用CallEmployee方法。

+0

'Thread.Sleep(100000);'?????這裏發生了一些非常錯誤的事情。 – Will

回答

3

如果您的視圖模型位於引用WindowsBase.dllPresentationFramework.dll組件,那麼你可以做:

System.Windows.Application.Current.Dispatcher.BeginInvoke(...);

否則,你需要抽象的調度員,可能是通過使用一些接口和工廠模式或IoC或其他。

+0

感謝它的工作。 – user2519971