从MainPage访问框架内的子页面中的函数

时间:2017-04-12 14:45:53

标签: xaml visual-c++ uwp uwp-xaml c++-cx

我正在尝试访问加载到框架中的.XAML页面中的函数或UI组件。 在我的MainPage中,我有一个框架,用于显示使用...

的不同页面
Frame->Navigate(Windows::UI::Xaml::Interop::TypeName(View::typeid));

我可以使用...

从View页面访问MainPage中的函数
View::View() : rootPage(MainPage::Current)
{
...
}
View::onClickBtnAdd(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)
{
 rootPage->ResetImageView();
}
void View::DoSomething(){
//do some stuff in the View page
}

这允许从View.xaml.cpp访问MainPage.xaml.cpp中的函数并且工作正常。 我希望能够从MainPage.xaml.cpp访问View.xaml.cpp ......如下所示。

MainPage::onImageTapped(Platform::Object^ sender, Windows::UI::Xaml::Input::TappedRoutedEventArgs^ e)
{
View->DoSomething();
}

我已经查看了Frame Class的文档,看起来我可能需要SourcePageType,但我无法弄清楚如何使用它。 任何提示?

1 个答案:

答案 0 :(得分:1)

您需要将MainPage中的Frame->内容转换为您的View类型,这样您就可以访问其公共方法。