WinForms sağ üst köşede formu küçülten, büyüten ve kapatan üç kutuya sahiptir. Yapabilmek istediğim şey, yakınlığı korurken küçültmek ve büyütmek.
Ayrıca formu kapatmak yerine küçültmek için ne yapmalıyım.
Bu nasıl yapılabilir?
Yanıtlar:
FormOlarak adlandırılan iki özelliği vardır MinimizeBoxve MaximizeBoxbunların her ikisi de set, false.
Formun kapatılmasını durdurmak için FormClosingolayı işleyin e.Cancel = true;ve orada ayarlayın ve ardından WindowState = FormWindowState.Minimized;formu simge durumuna küçültmek için ayarlayın .
Bir işleyiciyi FormClosingolaya bağlayın , ardından e.Cancel = trueformu ayarlayın ve ayarlayın this.WindowState = FormWindowState.Minimized.
Hiç gerçekten yakın forma istiyorsanız, sınıfsal boole'sini yapmak _closeişleyicinizde, sette ve e.Cancelkarşı !_closeböylece kullanıcı tıkladığında o, Xpencerenin, bir kapanmıyor, ama sen hala yakın o (olmadan sadece öldürmek) ileclose = true; this.Close();
(Ve sadece cevabımı tamamlamak için) özellikleri ayarlayın MaximizeBoxve MinimizeBoxoluşturun False.
Gizlemek istediğiniz forma sağ tıklayın, Kontroller -> Özellikler'i seçin.
Özellikler'de,
Bunu tasarımcıda yapacaksınız.
form yapıcısını maksimize et seçeneğini devre dışı bırakabilirsiniz.
public Form1(){
InitializeComponent();
MaximizeBox = false;
}
kapatırken en aza indirmek için.
private void Form1_FormClosing(Object sender, FormClosingEventArgs e) {
e.Cancel = true;
WindowState = FormWindowState.Minimized;
}
public Form1()
{
InitializeComponent();
//this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
this.MaximizeBox = false;
this.MinimizeBox = false;
}