wpf中窗体的移动通用解决方法

需求背景:设置了不允许改变窗口大小(在Window标签中设置ResizeMode为NoResize),之后窗口无法被拖动

1.在Window标签中添加'MouseLeftButtonDown',并且生成事件处理程序

2.到后台的相应事件处理程序中添加

cs 复制代码
            base.OnMouseLeftButtonDown(e);  //未处理的点击路由事件,实现处理事件的方法
            //获取鼠标相对窗口的位置
            Point position = e.GetPosition(this);
            //鼠标放在窗口就移动
            if(e.LeftButton == MouseButtonState.Pressed)
            {
                if(position.X >= 0 && position.X < this.ActualWidth && position.Y >= 0 && position.Y <= this.ActualWidth)
                {
                    this.DragMove();
                }
            }
相关推荐
somethingGoWay35 分钟前
wpf 自定义密码文本框,并且可以双向绑定
wpf
玉面小君14 小时前
从 WPF 到 Avalonia 的迁移系列实战篇4:控件模板与 TemplatedControl
wpf
何双新20 小时前
第 2 讲:Kafka Topic 与 Partition 基础
kafka·wpf·linq
我要打打代码20 小时前
WPF依赖属性和依赖属性的包装器:
wpf
cplmlm1 天前
WPF+IOC学习记录
c#·wpf
c#上位机2 天前
wpf之Canvas
c#·wpf
c#上位机2 天前
wpf之样式
c#·wpf
玉面小君2 天前
从 WPF 到 Avalonia 的迁移系列实战篇2:路由事件的异同点与迁移技巧
wpf·avalonia
c#上位机2 天前
wpf之WrapPanel
c#·wpf
c#上位机2 天前
wpf之StackPanel
c#·wpf