WinForm自定义标题栏
这里只是一个功能的演示,代码也很简单,大体思路是把一个窗体的FormBorderStyle设为None,这是就没有标题栏了,然后自己添加两个Panel,一个为PanelCaption,一个为PanelContent,PanelCaption作为这个窗体的标题栏,图片如下:
上面蓝色部分为标题栏,下面很色部分为内容
代码如下:
注:代码中的panel1是标题栏的Name
public partial class Form1 : Form { public Form1() { InitializeComponent(); } public static Point CPoint; bool down = false; private void panel1_MouseDown(object sender, MouseEventArgs e) { CPoint = new Point(e.X,e.Y); down = true; } private void panel1_MouseMove(object sender, MouseEventArgs e) { if (down == true) { if (e.Button == MouseButtons.Left) { Point mousePosition = Control.MousePosition; mousePosition.Offset(-CPoint.X,-CPoint.Y); this.DesktopLocation = mousePosition; } } } }