0

我有一個簡單的問題。 在我的UWP應用程序中,我使用多線程,並在後臺線程上嘗試使用代碼創建簡單的BitmapImage:var image=new BitmapImage();。它引發異常UWP背景線上的bitmapimage

該應用程序調用了一個接口,該接口被編組爲另一個線程。

這個異常發生在我試圖創建圖像的那一行。我只是想創建這個圖像,處理它的屬性,然後將它存儲在我的datalist中。

注意:datalist是一個簡單的公共靜態屬性,它可以在整個應用程序中訪問。謝謝你

回答

2

我不能看到問題的完整上下文,所以我不知道爲什麼這個異常冒泡,但一個可行的方法來解決它是使用CoreDispatcher.RunAsync()。 文檔說:

如果你是一個工作線程,並要安排在UI線程上工作,使用CoreDispatcher :: RunAsync。

如果您正在使用MVVMLight,你也可以利用它的DispatcherHelper類CheckBeginInvokeOnUI方法。它會更好一些,因爲它首先檢查調用哪個線程,如果它是UI線程,它會立即執行動作並僅在需要時纔將其傳遞到UI線程。

+0

不要忘記接受我的答案,如果它解決了你的問題! ;) –

+0

您的回答確實幫助我找到了UWP的確切答案,這裏是 http://stackoverflow.com/a/10594388/5305863 –