2013-12-17 25 views
2

我有一個應用程序,我想將多個WPF應用程序加載爲模塊。在這裏,每個模塊都應該成爲一個窗口,但仍然可以在任何特定時刻訪問多個模塊。如果我創建單獨的UI線程,而不是某些模塊崩潰報告異常,它不能從創建它的不同線程訪問UI對象。那麼,是否可以在單個UI線程中加載多個模塊?在單個WPF線程中加載多個模塊

+0

沒有。 UI元素是以線程爲中心的。他們必須在UI上加載。最好使用帶有模板的MVVM模式來限制UI加載速度。 – Will

回答

1

那麼,是否有可能在單個UI線程中加載多個模塊?

是的,你可以加載每個「模塊」到主UI線程。如你所說,假設每個「模塊」由Window定義,這應該可以正常工作 - 只需加載它們並顯示其所有窗口。

這裏需要注意的是,所有的「模塊」都將在一個線程中運行,所以如果一個行爲不當(阻止UI線程)會阻塞所有模塊。

+0

而且我也在切換窗口時遇到問題。無論何時用戶嘗試加載相同的模塊顯示/隱藏相同的窗口,從而使用每個應用程序的單個實例。但是當用戶嘗試啓動應用程序時,需要在後臺顯示窗口才能顯示問題。 – Satya

+0

@Satya這裏有很多的實現細節 - 難以幫助,沒有看到一個小的可重現的例子。你應該爲此提出一個單獨的問題,用代碼展示你的問題。 –

+0

好吧,會做到這一點。謝謝。 – Satya