2017-09-26 62 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)); 
相关问题