如何在WPF中拖动时创建一个调整窗口大小的按钮?

时间:2011-06-23 08:33:32

标签: c# wpf button resize window

我正在尝试制作一个按钮,在拖动窗口时调整窗口大小,就像窗口的右下角一样。

我尝试使用.MouseMove和.MouseDown事件,但它不起作用。以下是我的代码示例:

void ButtonResize_MouseMove(object sender, MouseEventArgs e)
{
    if (e.LeftButton == MouseButtonState.Pressed)
    {
        Point pos = e.GetPosition(Window);
        Window.Width += (pos - MousePos_OLD).X;
        Window.Height += (pos - MousePos_OLD).Y;
    }

    MousePos_OLD = e.GetPosition(Window);
}

我也试过使用MouseDown事件,并且MouseMove事件正在处理更新鼠标位置,但没有...

那我怎么能在WPF中做到这一点?

1 个答案:

答案 0 :(得分:4)

存在一个控件:Thumb

它包含您搜索的事件事件DragDelta。

编辑:

要自定义他的可视化,您可以为他设置样式

<Style x:Key="ThumbStyle" TargetType="{x:Type Thumb}" >
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type Thumb}">
                    <Border BorderBrush="Black" BorderThickness="1" Background="Transparent"></Border>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
</Style>