Bir C# projesinde tüm form ların daha güzel görünmesi için FromBorderStyle özelliğini None yapmayı tercih ettim. Bu özellik formların default gelen üst kısımlarını yok ettiği için formları hareket ettiremez oldum. Formlar direk açıldığı gibi kalıyordu. Bu da programın kullanıcıları kısıtlaması demek. İşte bu kısıtlamadan kurtulmak için paylaştığım kodları kullanabilirsiniz:
Kod:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
//form hareketleri private bool durum = false; private Point noktalar = Point.Empty; private void frmGiris_MouseDown(object sender, MouseEventArgs e) { Form frm = sender as Form; durum = true; frm.Cursor = Cursors.SizeAll; noktalar = e.Location; } private void frmGiris_MouseMove(object sender, MouseEventArgs e) { if (durum) { Form frm = sender as Form; frm.Left = frm.Left + (e.X - noktalar.X); frm.Top = frm.Top + (e.Y - noktalar.Y); } } private void frmGiris_MouseUp(object sender, MouseEventArgs e) { Form frm = sender as Form; durum = false; frm.Cursor = Cursors.Default; } |
Ben formların tıklanıldığında istenilen yere taşınabilmesi için kullandım. Bu kodlar ihtiyaca göre diğer bütün kontroller için uygulanabilir.