调整无边框窗口的大小wpf

时间:2011-06-24 19:39:52

标签: c# wpf transparency

我如何使用wpf代替Windows窗体this

2 个答案:

答案 0 :(得分:6)

您可以通过设置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。

Refer MSDN link for more information

If you are looking for Metro UI like window please check this SO Question

答案 1 :(得分:5)

这是WPF中的sample和另一个blog,其中包含不同的样本。