博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
WPF移动Window窗体(鼠标点击左键移动窗体自定义行为)
阅读量:5210 次
发布时间:2019-06-14

本文共 1804 字,大约阅读时间需要 6 分钟。

XAML代码部分:1、引用System.Windows.Interactivity

        2、为指定的控件添加一个拖动的行为

        3、很简单的了解行为的作用和用法

 

自定义行为代码:

using System;using System.Collections.Generic;using System.Text;using System.Windows;using System.Windows.Controls;using System.Windows.Data;using System.Windows.Documents;using System.Windows.Input;using System.Windows.Interactivity;using System.Windows.Interop;using System.Windows.Media;using System.Windows.Media.Imaging;using System.Windows.Shapes;namespace SDT.Client.Behaviors{    ///     /// 鼠标点击左键移动窗体自定义行为    ///     public class MouseDragWindowBehavior : Behavior
{ public MouseDragWindowBehavior() { /* 在创建WPF自定义窗体时,往往会取消默认的窗体样式, * 那么当WindowStyle设置为None时, * 需要移动窗体时就必需对某一个UIElement控件进去指定的DragMove操作; * * 下面就为指定的控件绑定一个点击左键事件移动窗体的行为 */ } private Window m_CurrentWindow; protected override void OnAttached() { base.OnAttached(); //为行为对象添加一个模拟移动的点击事件 this.AssociatedObject.PreviewMouseLeftButtonDown += OnDragMove; } private void OnDragMove(object sender, MouseButtonEventArgs e) { //获取鼠标坐标 Point position = e.GetPosition(AssociatedObject); //鼠标坐标在控件范围内运行移动窗体 if (position.X < AssociatedObject.ActualWidth && position.Y < AssociatedObject.ActualHeight) { //获取当前附加行为的控件所在窗体(Window对象) if (m_CurrentWindow == null) { m_CurrentWindow = Window.GetWindow(AssociatedObject); } m_CurrentWindow.DragMove(); } } }}

 

转载于:https://www.cnblogs.com/xhh-lite/p/5531262.html

你可能感兴趣的文章
DDRmenu(翻译)
查看>>
python xml解析和生成
查看>>
gulp下单页面应用打包
查看>>
python应用:爬虫实例(静态网页)
查看>>
012 webpack中的router
查看>>
用Monitor简单3步监控中间件ActiveMQ
查看>>
迅为iTOP-4418开发板兼容八核6818开发板介绍
查看>>
com.fasterxml.jackson.databind.JsonMappingException
查看>>
【UVa 540】Team Queue
查看>>
Advanced Architecture for ASP.NET Core Web API
查看>>
排序算法(二)
查看>>
4.4 多线程进阶篇<下>(NSOperation)
查看>>
如何更改Android的默认虚拟机地址(Android virtual driver路径设置)
查看>>
Python内置函数(36)——iter
查看>>
HTML标签_1
查看>>
jsp组成元素
查看>>
排序算法(转)
查看>>
windows自带的可生成各种数据库连接字符串工具打开方法
查看>>
form表单中method的get和post区别
查看>>
【做题】arc068_f-Solitaire——糊结论
查看>>