从外部类访问Page的功能

时间:2017-03-09 13:37:23

标签: c# wpf

在我的项目中,我以这种方式显示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方法。 这样做的正确方法是什么? 我必须检索框架的当前内容吗?

1 个答案:

答案 0 :(得分:1)

您可以将Content的{​​{1}}属性转换为Frame

PageWelcome

或者您可以创建PageWelcome page = mainWindow.frame.Content as PageWelcome; if(page != null) page.Play(); 的实例,在类的字段中保留对它的引用,并设置Page的{​​{1}}属性:

Frame

使用后一种方法,你不必投射。