我們使用.NET 3.5並已開始使用Reactive Extensions。我們正在使用與.NET 3.5兼容的system.Reactive(運行時版本:v2.0.50727)。我試圖觀察調度程序調度程序上的事件,因爲我使用WPF控件(它是winforms外殼,嵌入WPF主機控件),但是我無法在調度程序類(system.reactive)上發現該選項。 concurrency.scheduler)。看起來像從.NET 4.0起可用。我的問題是,我如何才能在.NET 3.5中工作?請注意,該調用發生在我的ViewModel而不是View中。調度程序調度程序 - Rx
代碼:
this.ObservePropertyChanged(x => x.Queue)
//I cant find scheduler dispatcher option,
//there are other options such as current, imeediete, new etc.
.ObserveOn(Scheduler.Dispatcher)
.Subscribe(RefreshQueues);
感謝,
-Mike
AFAIK,current只會調用回調線程(後臺線程)上的操作。我需要在UI線程上執行訂閱,並且UI綁定集合正在更新。 – Mike
DispatcherScheduler.Current就是你所描述的。它彙集了當前的ui調度員的呼叫。 – Cookingsource
ahh ..現在我明白了..「dispatcherScheduler」,而不是「Scheduler」..我試過System.Reactive.Concurrency.DispatcherScheduler.Current,並且該行導致編譯錯誤。您確定這在.NET 3.5中可用? – Mike