Создание производного класса от Page throws CLASS_E_CLASSNOTAVAILABLE с C ++ / WinRT - PullRequest
0 голосов
/ 17 марта 2020

Я хочу создать свой собственный производный класс, MyPage из winrt::Windows::UI::Xaml::Controls::Page. Я использую хостинговый API XAML, и я установил свойство Content() моего источника XAML равным Frame, которое я создал. Чтобы создать класс моей страницы, я выполнил следующие действия:

1) Определить IDL

namespace UI
{
    [default_interface]
    runtimeclass MyPage : Windows.UI.Xaml.Controls.Page
    {
        MyPage();
    }
}

2) Я создаю проект, копирую сгенерированный заголовок и исходный файл из project_root_folder\Debug\Generated Files\sources в проект root. Затем я добавляю файлы с помощью обозревателя решений.

3) Я удаляю static_assert из каждого из файлов.

4) Я строю проект и создаю экземпляр своего класса как winrt::UI::MyPage mypage; .

Код компилируется, но когда выполнение кода достигает строки winrt::UI::MyPage mypage;, и ClassFactory cannot supply the requested class выдается.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...