0

Frame我有一个 Visual Basic .net 和 WPF 程序,它使用在我的 main 上的控件中显示的一系列页面Window,页面是从框架外部的 main 控件中导航的Window,我可以正常工作。

MediaElement我在该主控件上也有一个控件Window,我需要能够通过用户单击页面中的元素来更改此控件的源属性。到目前为止,每次我尝试这样做时都会遇到错误。

现在我在 mainWindow中有一个公共共享函数,它从页面中的控件调用,控件上的代码将要加载到源属性中的 URL 传递给函数,然后函数应该将 url 传递到源属性并告诉MediaElement播放。

我在尝试实现这一点时遇到的错误是:

如果没有类的显式实例,则无法从共享方法或共享成员初始化程序中引用类的实例成员。

请帮忙,我怎么能做到这一点?

4

2 回答 2

0

您是否在共享功能中获取主窗口或媒体元素的实例?如果没有,这就是你的问题。

您可以在加载主窗口时将媒体元素粘贴到共享变量中,或者您可以使用 application.current.app.rootvisual 的 rootvisual 访问主窗口。

如果您的问题是其他问题,请在您的共享函数中发布导致错误的代码。

于 2013-08-09T19:09:50.167 回答
0

非常感谢史蒂夫的回答,但是在今天闲着尝试一些不同的搜索词之后,我在另一篇文章中找到了我需要的方法。

在另一篇文章中被称为 Jean 的人:https ://stackoverflow.com/a/16781963/2668533通过使用 application.current.windows 提出了一些对我有用的建议:

Dim parent As MainWindow = Application.Current.Windows(0)
parent.player.Source = New Uri(url)

很抱歉看起来像个新手,但 WPF 对我来说是全新的,我从来没有遇到过使用 WindowsForms 需要任何类似的东西。

于 2013-08-10T19:49:03.420 回答