السلام عليكم
إخواني هذه طريقة جديدة لتغيير شكل الـTitle Bar مع تحكم كامل فيه
نبداً بعون الله
أولاً نقوم بتغيير خاصية الـ Form Border Style إلى None
ثانياً ننشاً Panel ونحدد مكانها في أعلى الفورم ولا ننسا أن نغير لونها
ثالثاً نضيف هذا الكود في أعلى الكود في الفورم ونستخدم مكتبة System.Runtime.IntropServices
[DllImport("user32.dll")]
static extern int SendMessage(
IntPtr hWnd,
int Msg,
int wParam,
int lParam);
[DllImport("user32.dll")]
static extern bool ReleaseCapture();
const int WM_NCLBUTTONDOWN = 0xA1; // 161
const int HTCAPTION = 2;رابعاً نضبط حدث الـMouseDown في البانل ونضيف هذا الكود
ReleaseCapture(); SendMessage(this.Handle, WM_NCLBUTTONDOWN, HTCAPTION, 0);
وهذا المشروع يوضح العملية Custom_Title.zip