从 MainPage 的框架内访问子页面中的功能
Access a function in child page within a frame from the MainPage
我正在尝试访问加载到框架中的 .XAML 页面中的函数或 UI 组件。
在我的 MainPage 中,我有一个用于显示不同页面的框架...
Frame->Navigate(Windows::UI::Xaml::Interop::TypeName(View::typeid));
我可以使用...从“查看”页面访问 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 是我可能需要的,但我不知道如何使用它。
有什么提示吗?
您需要将 MainPage 中的 Frame->Content 转换为您的视图类型,这样您就可以访问其 public 方法。
我正在尝试访问加载到框架中的 .XAML 页面中的函数或 UI 组件。 在我的 MainPage 中,我有一个用于显示不同页面的框架...
Frame->Navigate(Windows::UI::Xaml::Interop::TypeName(View::typeid));
我可以使用...从“查看”页面访问 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 是我可能需要的,但我不知道如何使用它。 有什么提示吗?
您需要将 MainPage 中的 Frame->Content 转换为您的视图类型,这样您就可以访问其 public 方法。