我有一个应用程序,有一个主窗口和辅助窗口。
在某些情况下,我希望在用户启动应用程序时只显示一个辅助窗口。
问题是应用程序的主窗口是自动启动的,所以在以编程方式打开辅助窗口后,我会同时看到主窗口和辅助窗口。
有什么办法可以隐藏主窗口吗?(例如,模拟用户按下主窗口右上角的“关闭按钮”?)
发布于 2017-07-06 02:59:34
为什么关闭/隐藏主窗口?您可以在主窗口中显示辅助窗口的内容(这是在应用程序启动时创建的),如果用户想要显示主窗口,您可以在辅助窗口中显示其内容。
发布于 2017-07-05 05:46:23
创建辅助视图后,我切换到这个新视图,指定fromViewId
作为主视图id,并使用ApplicationViewSwitchingOptions.ConsolidateViews
选项隐藏它:
// Create seprate secondary window
await ApplicationViewSwitcher.TryShowAsStandaloneAsync(secondaryWindowViewId);
// Switch to secondary window just created, which hides the main view
await ApplicationViewSwitcher.SwitchAsync(
secondaryWindowViewId,
mainWindowViewId,
ApplicationViewSwitchingOptions.ConsolidateViews);
不是最优雅的解决方案,但它工作:)更优雅的解决方案是受欢迎的!
发布于 2020-06-26 20:39:48
在主窗口中执行ApplicationView.GetForCurrentView().TryConsolidateAsync()
,将其正常关闭,就像通过单击标题栏中的关闭按钮将其关闭一样。这比Application.Exit()
更好,因为当Application.Exit()
突然关闭应用程序时,这种方法会暂停应用程序。此外,通过这种方法关闭应用程序,您的应用程序的先前位置和大小会被记住,这与Application.Exit()
不同。
https://stackoverflow.com/questions/44913866
复制相似问题