我正在尝试从页面(SettingsPage)导航到另一个页面(Page1) . 这是尝试过的:
this->Frame::Navigate(typeid(Page1))
我收到此错误 - 错误(活动)E0244限定名称不是类“winrt :: Calculator :: implementation :: SettingsPage”或其基类的成员...
我的问题 - 这个电话的正确方法是什么 .
使用xaml_typename函数模板在C / WinRT中获取一个适当描述XAML类型的对象(作为TypeName结构) . 确保通过适当的合格类型,例如
this->Frame().Navigate(xaml_typename<Page1>());
确保 #include <winrt/Windows.UI.Xaml.Interop.h> 定义了 xaml_typename 功能模板 .
#include <winrt/Windows.UI.Xaml.Interop.h>
xaml_typename
请注意 Frame 是 Page 的属性,可以使用C / WinRT中的括号进行访问 . 另请注意,Navigate是非静态类成员,因此您无法使用范围解析运算符( :: ) .
Frame
Page
::
1 回答
使用xaml_typename函数模板在C / WinRT中获取一个适当描述XAML类型的对象(作为TypeName结构) . 确保通过适当的合格类型,例如
确保
#include <winrt/Windows.UI.Xaml.Interop.h>
定义了xaml_typename
功能模板 .请注意
Frame
是Page
的属性,可以使用C / WinRT中的括号进行访问 . 另请注意,Navigate是非静态类成员,因此您无法使用范围解析运算符(::
) .