このクラスがあるとします:
public ref class Page1 sealed : Windows::UI::Xaml::Controls::Page {};
このクラスのインスタンスを次のようにアクティブ化できます。
auto page = ref new Page1();
しかし、生の C++ でそれを行うにはどうすればよいでしょうか。
私はこれを試しましたが、うまくいきません:
Microsoft::WRL::Wrappers::HString className;
className.Set(L"App1.Page1");
IInspectable *page;
Windows::Foundation::ActivateInstance(className.Get(), &page);
上記のコードは、独自の参照クラス「App1.Page1」ではなく、Windows ランタイム クラス名 (「Windows.UI.Xaml.Controls.Button」など) を指定すると機能します。
または、名前空間で名前が付けられた public ref クラスを宣言しPage1
たApp1
場合、このクラスのインスタンスをIInspectable*
HSTRING "App1.Page1" からアクティブ化するにはどうすればよいでしょうか?