Как перейти на новую страницу с помощью WinUI3 с настольным приложением на C++?
Сначала я создаю проект, используя шаблон "Пустое приложение, упакованное (WinUI на рабочем столе)" в Visual Studio.
Затем я изменил код в MainWindow.xaml на простой Frame:
<Frame x:Name="rootFrame"></Frame>
Затем я добавляю BlankPage и пытаюсь перейти к BlankPage следующим образом:
rootFrame().Navigate(xaml_typename<BlankPage>());
И тогда визуальная студия выдает мне ошибку:
winrt\Windows.UI.Xaml.Interop.h(643,29): error C2338: T must be WinRT type.
Я не умею делать...
1 ответ
Решение
Наконец я нашел в чем дело. Это связано с пространством имен, когда я создаю новую страницу, есть три пространства имен:
winrt::PROJECTNAME::implementation::BlankPage
winrt::PROJECTNAME::factory_implementation::BlankPage
PROJECTNAME::BlankPage
Я должен использовать PROJECTNAME::BlankPage, определенный в BlankPage.idl