web-dev-qa-db-fra.com

Maximiser une fenêtre par programme et empêcher l'utilisateur de modifier l'état de la fenêtre

Comment maximiser une fenêtre par programme afin qu'elle ne puisse pas être redimensionnée une fois que Atteint l'état maximisé (par exemple, maximiser Internet Explorer et le voir)?

J'ai défini la propriété FormWindowState comme 

this.WindowState = FormWindowState.Maximized;
this.MaximizedBounds = (x,y);

mais ça ne marche pas. Comment puis-je faire cela?

La fenêtre que je veux agrandir est une fenêtre de mon application.

14
karthik

Lorsque votre formulaire est agrandi, définissez sa taille minimale = taille maximale afin que l'utilisateur ne puisse pas le redimensionner.

    this.WindowState = FormWindowState.Maximized;
    this.MinimumSize = this.Size;
    this.MaximumSize = this.Size;
29
Ram

Tu étais proche ... après ton code de

WindowState = FormWindowState.Maximized;

ALORS, définissez la capacité de taille min/max du formulaire sur la valeur une fois dimensionnée.

MinimumSize = this.Size;
MaximumSize = this.Size;
7
DRapp

Pour que la fenêtre ne puisse plus être redimensionnée une fois que vous l'avez agrandie, vous devez remplacer la variable FormBorderStyle de Sizable par l'une des constantes fixes:

FixedSingle
Fixed3D
FixedDialog

Dans la section MSDN Page Remarks:

Le style de bordure du formulaire détermine la manière dont le bord extérieur du formulaire apparaît. En plus de changer l'affichage de la bordure pour un formulaire, certains styles de bordure empêchent la taille du formulaire. Par exemple, le style de bordure FormBorderStyle.FixedDialog modifie la bordure du formulaire en une boîte de dialogue et empêche le redimensionnement du formulaire. Le style de la bordure peut également affecter la taille ou la disponibilité de la section de barre de légende d'un formulaire.

Cela changera l'apparence du formulaire si vous choisissez Fixed3D, par exemple, et vous devrez probablement travailler si vous souhaitez que le formulaire soit restauré en mode non agrandi et redimensionnable.

3
ChrisF

Modifiez la propriété WindowState en System.Windows.Forms.FormWindowState.Maximized, dans certains cas, si les réponses plus anciennes ne fonctionnent pas.

Donc, la fenêtre sera maximisée et les autres parties sont dans les autres réponses.

0
hydroper