【发布时间】:2021-09-18 05:17:07
【问题描述】:
如何在 WinRT / WinUI3 中打开新窗口?我想单击一个按钮并在当前/主窗口顶部打开另一个浮动窗口。
我已经尝试了几个零运气样本的代码:
-
https://docs.microsoft.com/en-us/windows/apps/windows-app-sdk/windowing/windowing-overview
- 我无法导入
(dll 不加载)
- 我无法导入
-
https://github.com/microsoft/Windows-universal-samples/blob/main/Samples/AppWindow/cppwinrt/Scenario3_Size.h
- 这使用旧的 Windows:: 命名空间(不合适)
-
https://github.com/microsoft/WinUI-3-Demos/tree/master/src/ContosoAirlinePOS
- 不导航到新窗口(BoardingPassWindow 实际上是一个页面,而不是一个窗口)
-
Frame.Navigate(xaml_typename<NewWindowClass>())- 不起作用/抛出异常
-
winrt::Microsoft::UI::Xaml::Controls::Frame rootFrame{ nullptr }; auto content = Window::Current().Content(); if (content) { rootFrame = content.try_as<winrt::Microsoft::UI::Xaml::Controls::Frame>(); } - 高于sn-p^
-
Window::Current().Content();调用时抛出异常
-
-
appWindow = Microsoft::UI::Xaml::Window(this, {}); appWindow.Activate()- 抛出异常
大多数 C++ WinUI3 文档中仍然只有 C# 代码示例,因此对我来说基本上没用。我只想打开一个新窗口,别无其他。
【问题讨论】:
标签: windows-runtime winui-3 cppwinrt