调整无边框窗口wpf的大小

本文关键字:wpf 窗口 边框 调整 | 更新日期: 2023-09-27 18:00:13

我如何使用wpf而不是windows窗体来实现这一点?

调整无边框窗口wpf的大小

您可以通过设置WindowChrome来实现。

        /* Set Borderless Chrome to this Window */
        WindowChrome Resizable_BorderLess_Chrome = new WindowChrome();
        Resizable_BorderLess_Chrome.GlassFrameThickness = new Thickness(0);
        Resizable_BorderLess_Chrome.CornerRadius = new CornerRadius(0);
        Resizable_BorderLess_Chrome.CaptionHeight = 5.0;            
        WindowChrome.SetWindowChrome(this, Resizable_BorderLess_Chrome);

在窗口构造函数中添加以上代码,以获得无边框可调整大小的窗口。或者您可以使用窗口样式设置器来设置窗口chrome属性:

<Setter Property="WindowChrome.WindowChrome">
        <Setter.Value>
            <WindowChrome CornerRadius="0" GlassFrameThickness="1" UseAeroCaptionButtons="False"/>
        </Setter.Value>
</Setter>

除此之外,您还需要将ResizeMode设置为CanResize(或CanResizeWithGrip,只要适合您的目的),并将Window Style设置为None。

有关更多信息,请参阅MSDN链接

如果您正在寻找类似Metro UI的窗口,请检查此SO问题

这是WPF中的一个示例还有另一个不同样本的博客。