【问题标题】:how to hide / collapse title bar in a UWP app?如何在 UWP 应用中隐藏/折叠标题栏?
【发布时间】:2015-10-30 16:15:41
【问题描述】:

有没有办法以某种方式隐藏/折叠/使 UWP 应用中的标题栏暂时不可见(但不是完全禁用)?

我知道可以让应用程序全屏显示,然后标题栏会自动折叠,但我需要在可调整大小的桌面窗口中实现它。 我也知道你可以自定义标题栏的外观,比如颜色等。

原因:我有一个包含很多窗口的应用程序,需要节省屏幕空间并为窗口的客户区留出更多空间。

我阅读了不同的资料,但找不到答案:

例如,对于 WPF 似乎有相同问题的解决方案:How to remove the title bar from a window but keep the border

【问题讨论】:

  • 没有,我想这是有充分理由的 ;)
  • 有什么好的理由?事实上,标题栏在全屏模式下已经可以折叠了。为什么不让它在“可调整大小的窗口”模式下也可以折叠?
  • 如果被折叠了怎么能不被折叠?一个很好的理由总是它是一个很少使用/请求的功能,所以没有在优先级列表中。
  • @Matt Lacey:例如,当将鼠标悬停在窗口的右上角时,它可能是未折叠的(同时仍然保持通过拖动窗口来移动窗口的能力,就像在 @987654326 中已经完成的那样@ 模式),或者在窗口的边界处可能有一条小的粗线(或任何其他方便的小控件),单击时会展开标题栏。

标签: c# xaml windows-10 uwp titlebar


【解决方案1】:

最后,我应该说,为了获得额外的屏幕空间(我需要),可以将客户区扩展到标题栏并制作 3 个按钮的背景颜色(最小化、最大化、关闭)透明:

带有标准标题栏:

带有扩展视图和透明按钮的背景:

ApplicationViewTitleBar formattableTitleBar = ApplicationView.GetForCurrentView().TitleBar;
formattableTitleBar.ButtonBackgroundColor = Colors.Transparent;
CoreApplicationViewTitleBar coreTitleBar = CoreApplication.GetCurrentView().TitleBar;
coreTitleBar.ExtendViewIntoTitleBar = true;

【讨论】:

  • 我将代码放在 OnLoaded 方法中,它可以工作。有更好的地方吗?
猜你喜欢
  • 1970-01-01
  • 2016-09-29
  • 2020-09-02
  • 1970-01-01
  • 2021-11-04
  • 2021-09-09
  • 1970-01-01
  • 1970-01-01
  • 2016-04-29
相关资源
最近更新 更多