2017-09-26 64 views
-2

我正在寫一個WPF應用程序,我有一個的MediaElement,物業叫的VideoPlayer在一個名爲ViewmodelVideos類。MediaElement.Source拋出「System.InvalidOperationException」

當我說

ViewModelVideos.VideosPlayer.Source = new Uri(text); 

我得到一個異常:

Exception thrown: 'System.InvalidOperationException' in WindowsBase.dll 

我想不通爲什麼那不是工作。有任何想法嗎?

編輯:

「文本」是一個有效的URL,我可以把我的瀏覽器,它的工作原理。沒有HTTPS,簡單的http:// ...

+1

在一個視圖模型有一個MediaElement的聽起來很奇怪。視圖模型不應該有任何視圖元素。除此之外,我的猜測是你正在UI線程之外進行調用。什麼是異常消息? – Clemens

+0

@Clemens你能告訴我如何得到異常信息嗎?程序不停止,只有異常消息'拋出異常:WindowsBase.dll中的'System.InvalidOperationException'出現在輸出窗口中。有沒有嘗試繞過它。 – murkr

+0

@Clemens有關在ui線程之外進行調用的說法似乎很有用。你知道如何從ui線程之外設置源代碼嗎? – murkr

回答

0

@Clemens評論的伎倆:

的問題,我在做UI線程之外調用。

溶液

ViewModelVideos.VideosPlayer.Dispatcher.Invoke(() => ViewModelVideos.VideosPlayer.Source = new Uri(text)); 
相關問題