【问题标题】:Show WPF window with WindowStyle=None and no resize显示 WindowStyle=None 且不调整大小的 WPF 窗口
【发布时间】:2015-07-02 06:59:39
【问题描述】:

我正在尝试显示一个带有边框的窗口,如 WindowStyle="None"(图 2),但没有调整大小的选项!

当我设置ResizeMode="NoResize"时,边框消失(图1)

有人知道怎么做吗?

【问题讨论】:

  • 您的假设完全错误。 WindowStyle="None" 使您的边框消失,如图 1 所示。如果存在边框,则 ResizeMode="NoResize" 会禁用所有调整窗口大小的选项。
  • @rwank 嗯,不,WindowStyle="None" 不会让你的边框消失,除非你设置了ResizeMode="NoResize"。 @Xenogenesis 是对的。但它确实是重复的。
  • @almulo 是的,你是对的。我的错。
  • @rwank 谢谢,我找不到相关的问题,也许我要固定在“窗口”的措辞上,除了再次使用“框架”@almulo 你好,你是对的,没有指定 ResizeMode 和 None 作为 WindowStyle 有一个边框

标签: wpf resize styles window border


【解决方案1】:

您可以通过将 Max 和 Min size 属性设置为相同的值来解决此问题,从而强制 Window 具有固定大小。像这样的东西应该可以工作:

Window w = new Window();
w.MaxHeight = w.MinHeight = 300;
w.MinWidth = w.MaxWidth = 400;
w.WindowStyle = System.Windows.WindowStyle.None;
w.Show();

【讨论】:

  • 我同意固定大小和边框,但调整大小的光标仍然显示 => 有些用户会对此感到恼火
  • 窗口的边框(所谓的“chrome”)是Win32而不是WPF的一部分,所以我认为你不能直接在纯WPF中更改它。此时,一个解决方案是使用 NoResize,然后在窗口周围绘制自己的边框。
猜你喜欢
  • 2011-02-25
  • 2010-12-06
  • 1970-01-01
  • 2014-01-23
  • 2011-12-18
  • 1970-01-01
  • 1970-01-01
  • 2011-02-13
  • 2010-11-18
相关资源
最近更新 更多