【问题标题】:WPF Remove Window Body (Title Bar Only)WPF 删除窗口主体(仅限标题栏)
【发布时间】:2016-10-26 14:57:15
【问题描述】:

我正在尝试创建一个音乐播放器,我想要一个“极简模式”,它可以折叠成一排紧凑的控件,就像 WinAmp 的docked mode

我希望使用 MahApps.Metro 来实现这一点,因为它允许在标题栏中进行控制。但是,WPF 似乎不允许窗口主体的高度小于 8 px,因此一旦窗口移动,将窗口大小设置为 28(标题栏的高度)会导致这个奇怪的8-px-tall piece of the window body hanging off the bottom of the title bar

此外,将 WindowStyle 设置为 None 是不可行的,因为 MahApps.Metro 不支持,我想在窗口处于“正常模式”时使用它。

有没有办法完全隐藏 WPF 窗口的主体,只显示标题栏?

【问题讨论】:

    标签: c# wpf mahapps.metro


    【解决方案1】:

    我可以用 Metro-Samples 完全重现您的问题。

    我做了一个快速修复让它看起来像

    现在标题栏下方不再有像素。

    我做了什么?

    说实话,这更像是一种变通方法而不是正确的解决方案,但您可以简单地设置TitlebarHeight="39"

    希望这符合您的需求

    【讨论】:

    • 目前这是一个足够好的解决方法,但 39 像素并不是太紧凑。
    • 我同意你的看法。唯一适合您的解决方案可能是下载源代码并修改它们。但另一方面,如果您想拥有符合人体工程学的外观和感觉,39px 也可能有点小
    • 可以,但是紧凑模式可以切换。我想我只需要真的缩小默认的平铺栏高度。即使这样,WPF 的最小窗口高度也可能是整体的,而不是排除标题栏。在这种情况下,将默认高度从 32 降低到 24 意味着我离底部 16 像素而不是 8 像素。
    猜你喜欢
    • 1970-01-01
    • 2011-11-20
    • 2016-08-31
    • 2015-09-13
    • 2021-12-14
    • 1970-01-01
    • 2020-01-09
    • 2014-01-19
    • 2013-08-05
    相关资源
    最近更新 更多