جابجایی فرم با کلیک ماوس توسط توابع API در سی شارپ

یکی از قابلیت های ساده اما بسیار کاربردی که راحتی کار با برنامه شما را برای کاربر بیشتر می کند ، انتفال فرم با ماوس با کلیک کردن روی هر نقطه ای از آن است .

با استفاده از کد زیر که از توابع API در آن استفاده شده است ، می توانید به آسانی این کار را انجام دهید .

ابتدا فضای نام زیر را در برنامه وارد کنید

using System.Runtime.InteropServices;

سپس از کد زیر در رویداد MouseDown فرم استفاده کنید :

[DllImport("user32.dll")]
static extern int ReleaseCapture();
[DllImport("user32.dll", EntryPoint = "SendMessageA")]
static extern int SendMessage(int hwnd, int wMsg, int wParam, object lParam);
private const int WM_NCLBUTTONDOWN = 161;

private void Form1_MouseDown(object sender, MouseEventArgs e)
{
    ReleaseCapture();
    SendMessage(this.Handle.ToInt32(), WM_NCLBUTTONDOWN, 2, 0);
}

منبع : سایت برنامه نویس