我想有一个按钮,创建另一个窗口。我正在构建你在VS2019预览版中获得的模板应用程序到目前为止,我已经创建了一个新的控件BlankWindow,只是默认的一个。我可以看到在App::OnLaunched中,创建了一个窗口:
window = make<MainWindow>();
window.Activate();
因此,在我的MainWindow.xaml.cs中,在我的按钮单击方法中,我将:
Window bWindow= make<BlankWindow>();
bWindow.Activate();
我检查了BlankWindow.idl文件,发现BlankWindow继承自Controls而不是Windows,所以我更改了它。现在它构建了,但是当我单击主窗口中的按钮时,我看到窗口 Flink 打开并立即关闭。这是怎么回事?
4条答案
按热度按时间tuwxkamq1#
关于多窗口应用程序的工作正在进行中。它可作为预览功能。
https://learn.microsoft.com/en-us/windows/apps/winui/winui3/#preview-features
mklgxw1f2#
您可以在“在新线程上创建新窗口”的子标题下为Windows UI库(WinUI)定义Window Class中找到此问题的解决方案。把这一节放在上下文中,这将有助于阅读整个网页。没那么长
46scxncf3#
我们能够为目标子窗口包含xaml. h,并使用make template函数显示窗口。
请注意,成员变量中保存的类型和指定给make模板函数的类型是不同的。
(我使用的是DeepL的翻译,所以文本可能有点不正确。
7fhtutme4#
在Windows App SDK v1.1(2022年6月)中始终引入了对同一线程上多个窗口的支持。这里是Changelog。