我正在上使用了以下技術項目:如何在工作線程中調用UI線程上的方法?
- C#(.NET 4.0)
- WCF
- PRISM 4
我目前正在異步調用到我們的Web服務之一,使用由代理生成的Begin/End方法。調用成功,客戶端能夠在工作線程上接收Web服務的響應。
收到回覆後,我繼續舉辦活動。訂閱了該事件的類進行到請求UI導航使用PRISM:
Application.Current.Dispatcher.BeginInvoke(new Action(() =>
this.RegionManager.RequestNavigate(RegionNames.LoginContentRegion, projectSelectionViewUri)));
由於異步WCF響應未在UI線程上捕獲的,我被迫使用調用Application.Current.Dispatcher.BeginInvoke(...)
UI線程。
這裏的問題是調用似乎什麼都不做。用戶界面不會更新,也不會引發異常。
我應該如何從工作線程中引發的事件中調用UI線程?
編輯:這個問題已經被重新提出,在下面的鏈接,因爲所謂的重複不提供答案:
Request UI navigation using PRISM 4 on an asynchronous WCF response thread
爲什麼這個線程關閉。可能的重複不處理WPF Windows,並且已經接近3歲,我得到這是一個常見主題(網站範圍),但可能重複爲無所謂。 – 2011-12-20 15:40:12
我同意Ramhound ... – 2011-12-20 15:41:54