Menonaktifkan Minimalkan & Maksimalkan Pada WinForm?

99

WinForms memiliki tiga kotak di sudut kanan atas yang meminimalkan, memaksimalkan, dan menutup formulir. Apa yang ingin saya lakukan adalah menghilangkan meminimalkan dan memaksimalkan, sambil menjaga jarak.

Saya juga harus membuat close meminimalkan bentuk daripada menutupnya.

Bagaimana ini bisa dilakukan?

sooprise
sumber

Jawaban:

162

The Formmemiliki dua properti yang disebut MinimizeBoxdan MaximizeBox, setel keduanya ke false.

Untuk menghentikan penutupan formulir, tangani FormClosingacara tersebut, dan atur e.Cancel = true;di sana dan setelah itu, setel WindowState = FormWindowState.Minimized;, untuk meminimalkan formulir.

Hans Olsson
sumber
1
Bisakah Anda tidak hanya mengatur kotak kontrol ke salah.
kehormatan krystan
3
@krystanhonour OP ingin tetap dekat.
Hans Olsson
16

Atur MaximizeBoxdan MinimizeBoxbentuk properti menjadiFalse

volody
sumber
15

Ikat penangan ke FormClosingacara, lalu setel e.Cancel = true, dan setel formulirthis.WindowState = FormWindowState.Minimized .

Jika Anda ingin benar-benar menutup formulir, buat boolean seluruh kelas _closedan, di penangan Anda, setel e.Cancelke !_close, sehingga setiap kali pengguna mengeklikX jendela, itu tidak menutup, tetapi Anda masih dapat menutupnya (tanpa hanya membunuhnya) denganclose = true; this.Close();

(Dan hanya untuk membuat jawaban saya lengkap) mengatur MaximizeBoxdan MinimizeBoxmembentuk properti ke False.

dlras2
sumber
5

Klik kanan pada form yang Anda inginkan untuk menyembunyikannya, pilih Controls -> Properties.

Di Properties, set

  • Kotak Kontrol -> Salah
  • Minimalkan Kotak -> Salah
  • Maksimalkan Kotak -> Salah

Anda akan melakukan ini di desainer.

Arunkumar Pushparaj
sumber
4

Bagaimana cara memperkecil form saat menutup sudah terjawab, tapi cara menghilangkan tombol minimalkan dan maksimalkan tidak.
FormBorderStyle: FixedDialog
MinimizeBox: false
MaximizeBox:false

Tanda kurung
sumber
3

Anda cukup menonaktifkan maksimalkan konstruktor formulir dalam.

 public Form1(){
     InitializeComponent();
     MaximizeBox = false;
 }

untuk meminimalkan saat menutup.

private void Form1_FormClosing(Object sender, FormClosingEventArgs e) {
    e.Cancel = true;
    WindowState = FormWindowState.Minimized;
}
Sameera R.
sumber
1
public Form1()
{
InitializeComponent();
//this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
this.MaximizeBox = false;
this.MinimizeBox = false;
}
Mauricio Kenny
sumber
2
Harap tambahkan beberapa penjelasan pada jawaban Anda
mechnicov
Sobat, ini sangat mudah, hanya harus membaca setiap baris kode
Mauricio Kenny
Pada SO, kualitas jawabannya rendah
mechnicov