web-dev-qa-db-fra.com

Désactiver Réduire et Maximiser sur WinForm?

WinForms ont ces trois cases dans le coin supérieur droit qui minimisent, maximisent et ferment le formulaire. Ce que je veux être capable de faire est de supprimer le minimiser et de maximiser, tout en gardant la fermeture.

Je souhaite également que la fermeture minimise la forme au lieu de la fermer.

Comment cela peut-il être fait?

88
sooprise

Le Form a deux propriétés appelées MinimizeBox et MaximizeBox, elles sont définies sur false.

Pour arrêter la fermeture du formulaire, gérez l'événement FormClosing et définissez e.Cancel = true; dedans et après cela, placez WindowState = FormWindowState.Minimized;, pour minimiser la forme.

147
Hans Olsson

Liez un gestionnaire à l'événement FormClosing, puis définissez e.Cancel = true Et définissez le formulaire this.WindowState = FormWindowState.Minimized.

Si vous souhaitez réellement fermer le formulaire, créez un booléen _close Pour l'ensemble de la classe et, dans votre gestionnaire, définissez e.Cancel Sur !_close, Afin que l'utilisateur clique sur le bouton X sur la fenêtre, elle ne ferme pas, mais vous pouvez toujours la fermer (sans la tuer) avec close = true; this.Close();

(Et juste pour que ma réponse soit complète) définissez MaximizeBox et MinimizeBox propriétés du formulaire sur False.

15
dlras2

Définissez les propriétés de formulaire MaximizeBox et MinimizeBox sur False

14
volody

Cliquez avec le bouton droit sur le formulaire sur lequel vous souhaitez les masquer, choisissez Contrôles -> Propriétés.

Dans Propriétés, définissez

  • Boîte de contrôle -> Faux
  • Minimize Box -> False
  • Maximize Box -> False

Vous ferez cela dans le concepteur.

4

vous pouvez simplement désactiver maximiser le constructeur de formulaire intérieur.

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

minimiser lors de la fermeture.

private void Form1_FormClosing(Object sender, FormClosingEventArgs e) {
    e.Cancel = true;
    WindowState = FormWindowState.Minimized;
}
2
Sameera R.

Comment faire pour réduire la forme lorsque la fermeture a déjà été traitée, mais comment supprimer les boutons Réduire et Agrandir ne l'étaient pas.
FormBorderStyle: FixedDialog
MinimizeBox: false
MaximizeBox: false

1
Brackets
public Form1()
{
InitializeComponent();
//this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
this.MaximizeBox = false;
this.MinimizeBox = false;
}
0
Mauricio Kenny