在我们使用Winform窗体的时候,由于不喜欢WinForm的边框样式的时候,希望用字自己的设置的样式来进行美观的渲染,这样的话就没有办法像Winform那样拖动窗体,在这里我发现一个好东西分享给大家

可以在窗体的上面放一个Panel控件,使用MouseDown事件
将代码放在Form1中

    [DllImport("user32.dll")]public static extern bool ReleaseCapture();[DllImport("user32.dll")]public static extern bool SendMessage(IntPtr hwnd, int wMsg, int wParam, int lParam);private const int VM_NCLBUTTONDOWN = 0XA1;//定义鼠标左键按下private const int HTCAPTION = 2;

在Panel中添加一下Panel_MouseDown中的代码,就可以随意的拖动的窗口了
private void Panel_MouseDown(object sender, MouseEventArgs e)
{
//为当前应用程序释放鼠标捕获
ReleaseCapture();
//发送消息 让系统误以为在标题栏上按下鼠标
SendMessage((IntPtr)this.Handle, VM_NCLBUTTONDOWN, HTCAPTION, 0);
}

C# WinForm拖动窗体 使用MouseDown事件相关推荐

  1. winform 拖动无边框窗体(调用Windows API)

    第一步:将窗体的FormBoderStyle属性设置为None: 第二步:添加一个新类:Win32.cs 代码如下: 1 public class Win32 2 { 3 [DllImport(&qu ...

  2. C# Winform 实现窗体无系统边框,但是具有系统边框的所有功能,同时保证控件不闪烁

    本人新手,想写个上位机,窗口能够实现最小化,最大化,拖动,改变大小等常用功能,Winform窗体的FormBorderStyle设置成sizable即可实现,但是窗体有自带的边框,不好看且无法编辑,想 ...

  3. WinForm开发,窗体显示和窗体传值相关知识总结

    以前对WinForm窗体显示和窗体间传值了解不是很清楚 最近做了一些WinForm开发,把用到的相关知识整理如下 A.WinForm中窗体显示显示窗体可以有以下2种方法: Form.ShowDialo ...

  4. [转] C# Winform 拦截关闭按钮触发的事件

    原文 C# Winform 拦截关闭按钮触发的事件 用户关闭软件时,软件一般会给"是否确认关闭"的提示. 通常,我们把它写在FormClosing 事件中,如果确定关闭,就关闭:否 ...

  5. winform php 交互,WinForm开发,窗体显示和窗体传值

    以前对WinForm窗体显示和窗体间传值了解不是很清楚 最近做了一些WinForm开发,把用到的相关知识整理如下 A.WinForm中窗体显示 显示窗体可以有以下2种方法: Form.ShowDial ...

  6. 拖动窗体FormBorderStyle属性为None的窗体移动

    winform窗体的样式很单一,不够漂亮,往往我们需要对窗体进行重写,但是我们又要保留在重写前窗体本身带的功能,例如拖动窗体的头进行移动之类的. 一下方式可以实现该方法: [DllImport(&qu ...

  7. Winform程序窗体间的跳转

    关于Winform程序窗体间的跳转问题: 对于编程新手来讲,winform程序窗体间的跳转,经常会出现一些异常,或是弹出重复的窗口,如下图 下面给出一种方法,可以很好的避免掉这样的问题: 首先,在主程 ...

  8. WinForm禁用窗体自带的关闭功能

    1.代码结构 2.实现代码 using System; using System.Windows.Forms;namespace WinFormForbidCloseDemo {/// <sum ...

  9. 怎样正确处理WinForm中Listview的ItemCheck事件

    我很少写具体的对象应用心得,这次尝试一下. WinForm中Listview的ItemCheck事件,例子如下:   private void lvwTables_ItemCheck(object s ...

最新文章

  1. “伪高管”是如何搞垮一个公司的?
  2. IIS 之 添加绑定域名 或 设置输入IP直接访问网站
  3. web直播方案总结:
  4. [Phonegap+Sencha Touch] 移动开发18 Sencha Touch项目通过phonegap打包后的程序名字的问题...
  5. 求平方根的算法 牛顿迭代法和二分法
  6. React-Native系列Android——Native与Javascript通信原理(一)
  7. 使用windbg排查一个内存溢出的问题
  8. 序列化的高阶认识-Transient 关键字
  9. springmvc rest风格化案例
  10. 【.NET Core项目实战-统一认证平台】第一章 功能及架构分析
  11. C++ 堆、栈、自由存储区、全局静态存储区和常量存储区
  12. android 拍照屏幕大小,Android Camera 找出屏幕的最佳尺寸大小
  13. AngularJS----服务,表单,模块
  14. python代码_抢球鞋?预测股市走势?淘宝秒杀?Python表示要啥有啥 - 街角的守望。...
  15. 个人技能总结7--Apache服务器反向代理,负载均衡,热备份+Tomcat配置
  16. java方法前面加上x_@Autowired 写在构造方法上
  17. flash的计算机知识,Flash CS6计算机动画设计教程
  18. 2022年JDK-8下载方法
  19. Unity 计算包围盒
  20. 论文阅读——SIPP: Safe Interval Path Planning for Dynamic Environments

热门文章

  1. 【H5】 拖拽3事件( onmousedown ,onmousemove ,onmouseup )
  2. http——三次握手四次挥手
  3. angularjs实现行事历
  4. openpyxl对execl操作(单元格边框、列宽、单元格内容对齐)
  5. JavaScript-流程控制语句(笔记)
  6. 成功跳槽字节跳动,详细的Java学习指南
  7. Android 网络框架
  8. three.js正投影相机OrthographicCamera
  9. 「Kafka核心源码剖析系列」4. 走进Kafka服务端(下)
  10. OpenCV 之 cvCvtColor (色彩空间转换)