在我的项目中,我以这种方式显示Window
:
MainWindow mainWindow = new MainWindow();
mainWindow.Show();
而不是在自己的框架中加载Page
:
mainWindow.frame.NavigationService.Navigate(new Uri("PageWelcome.xaml", UriKind.Relative));
PageWelcome
包含一些公共函数:
public void Play()
{
mediaElement.Play();
}
现在从上面的初始课程开始,我想调用Play
方法。
这样做的正确方法是什么?
我必须检索框架的当前内容吗?
答案 0 :(得分:1)
您可以将Content
的{{1}}属性转换为Frame
:
PageWelcome
或者您可以创建PageWelcome page = mainWindow.frame.Content as PageWelcome;
if(page != null)
page.Play();
的实例,在类的字段中保留对它的引用,并设置Page
的{{1}}属性:
Frame
使用后一种方法,你不必投射。