首页 > 解决方案 > 如何使用 WinRT/C++ 在 WinUI3 中打开新窗口?

问题描述

如何在 WinRT / WinUI3 中打开新窗口?我想单击一个按钮并在当前/主窗口顶部打开另一个浮动窗口。

我已经尝试了几个零运气样本的代码:

大多数 C++ WinUI3 文档中仍然只有 C# 代码示例,因此对我来说基本上没用。我只想打开一个新窗口,别无其他。

标签: windows-runtimewinui-3cppwinrt

解决方案


您可以使用Windows App SDK 示例,例如修改此方法: void DemoPage::TitleBtn_Click

像这样:

void DemoPage::TitleBtn_Click(winrt::Windows::Foundation::IInspectable const& sender, winrt::Microsoft::UI::Xaml::RoutedEventArgs const& e)
{
    auto window = Window();
    auto tb = TextBlock();
    tb.Text(L"Hello");
    window.Content(tb);
    window.Activate();
}

这看起来与此处的 C# 示例完全相同:创建一个新窗口

var window = new Window();
window.Content = new TextBlock() { Text = "Hello" };
window.Activate();

推荐阅读