Comment positionner et dimensionner un formulaire (Windows Forms .NET)
Lorsqu’un formulaire est créé, la taille et l’emplacement sont initialement définis sur une valeur par défaut. La taille par défaut d’un formulaire est généralement une largeur et une hauteur de 800 x 500 pixels. L’emplacement initial, lorsque le formulaire est affiché, dépend de quelques paramètres différents.
Vous pouvez modifier la taille d’un formulaire au moment du design avec Visual Studio et au moment de l’exécution avec du code.
Redimensionner avec le concepteur
Après avoir ajouté un nouveau formulaire au projet, la taille d’un formulaire est définie de deux façons différentes. Tout d’abord, vous pouvez le définir avec les poignées de taille dans le concepteur. En faisant glisser le bord droit, le bord inférieur ou l’angle, vous pouvez redimensionner le formulaire.
La deuxième façon de redimensionner le formulaire pendant que le concepteur est ouvert, se trouve dans le volet des propriétés. Sélectionnez le formulaire, puis recherchez le volet Propriétés dans Visual Studio. Faites défiler jusqu’à la taille et développez-la. Vous pouvez définir manuellement la largeur et la hauteur.
Redimensionner dans le code
Même si le concepteur définit la taille de départ d’un formulaire, vous pouvez le redimensionner par le biais du code. L’utilisation du code pour redimensionner un formulaire est utile lorsque quelque chose sur votre application détermine que la taille par défaut du formulaire est insuffisante.
Pour redimensionner un formulaire, modifiez le Size, qui représente la largeur et la hauteur du formulaire.
Redimensionner le formulaire actif
Vous pouvez modifier la taille du formulaire actif tant que le code s’exécute dans le contexte du formulaire. Par exemple, si vous avez Form1
un bouton sur celui-ci, lorsque vous cliquez dessus, le gestionnaire d’événements appelle le Click
gestionnaire d’événements pour redimensionner le formulaire :
private void button1_Click(object sender, EventArgs e) =>
Size = new Size(250, 200);
Private Sub Button1_Click(sender As Object, e As EventArgs)
Size = New Drawing.Size(250, 200)
End Sub
Redimensionner un autre formulaire
Vous pouvez modifier la taille d’un autre formulaire après sa création à l’aide de la variable référençant le formulaire. Par exemple, supposons que vous avez deux formulaires ( Form1
le formulaire de démarrage dans cet exemple) et Form2
. Form1
a un bouton qui, lorsqu’il est cliqué, appelle l’événement Click
. Le gestionnaire de cet événement crée une nouvelle instance du Form2
formulaire, définit la taille, puis l’affiche :
private void button1_Click(object sender, EventArgs e)
{
Form2 form = new Form2();
form.Size = new Size(250, 200);
form.Show();
}
Private Sub Button1_Click(sender As Object, e As EventArgs)
Dim form = New Form2 With {
.Size = New Drawing.Size(250, 200)
}
form.Show()
End Sub
Si l’élément Size
n’est pas défini manuellement, la taille par défaut du formulaire correspond à ce qu’il a été défini pendant le design.< a0/&a0>.
Position avec le concepteur
Lorsqu’une instance de formulaire est créée et affichée, l’emplacement initial du formulaire est déterminé par la StartPosition propriété. La Location propriété contient l’emplacement actuel du formulaire. Les deux propriétés peuvent être définies via le concepteur.
Énumération FormStartPosition | Description |
---|---|
CenterParent | Le formulaire est centré dans les limites de son formulaire parent. |
CenterScreen | Le formulaire est centré sur l’affichage actuel. |
Manuel | La position du formulaire est déterminée par la propriété Location . |
WindowsDefaultBounds | Le formulaire est positionné à l’emplacement par défaut de Windows et est redimensionné à la taille par défaut déterminée par Windows. |
WindowsDefaultLocation | Le formulaire est positionné à l’emplacement par défaut de Windows et n’est pas redimensionné. |
La valeur CenterParent fonctionne uniquement avec des formulaires qui sont soit un formulaire enfant MDI (Multiple Document Interface), soit un formulaire normal affiché avec la ShowDialog méthode. CenterParent
n’a aucun impact sur un formulaire normal affiché avec la Show méthode. Pour centrer un formulaire (form
variable) vers un autre formulaire (parentForm
variable), utilisez le code suivant :
form.StartPosition = FormStartPosition.Manual;
form.Location = new Point(parentForm.Width / 2 - form.Width / 2 + parentForm.Location.X,
parentForm.Height / 2 - form.Height / 2 + parentForm.Location.Y);
form.Show();
form.StartPosition = Windows.Forms.FormStartPosition.CenterParent.Manual
form.Location = New Drawing.Point(parentForm.Width / 2 - form.Width / 2 + parentForm.Location.X,
parentForm.Height / 2 - form.Height / 2 + parentForm.Location.Y)
form.Show()
Position avec du code
Même si le concepteur peut être utilisé pour définir l’emplacement de départ d’un formulaire, vous pouvez utiliser du code pour modifier le mode position de départ ou définir l’emplacement manuellement. L’utilisation du code pour positionner un formulaire est utile si vous devez positionner et dimensionner manuellement un formulaire par rapport à l’écran ou à d’autres formulaires.
Déplacer le formulaire actif
Vous pouvez déplacer le formulaire actif tant que le code est en cours d’exécution dans le contexte du formulaire. Par exemple, si vous disposez Form1
d’un bouton sur celui-ci, lorsque vous cliquez sur Click
le gestionnaire d’événements. Le gestionnaire de cet exemple modifie l’emplacement du formulaire en haut à gauche de l’écran en définissant la Location propriété :
private void button1_Click(object sender, EventArgs e) =>
Location = new Point(0, 0);
Private Sub Button1_Click(sender As Object, e As EventArgs)
Location = New Drawing.Point(0, 0)
End Sub
Positionner un autre formulaire
Vous pouvez modifier l’emplacement d’un autre formulaire après sa création à l’aide de la variable référençant le formulaire. Par exemple, supposons que vous avez deux formulaires ( Form1
le formulaire de démarrage dans cet exemple) et Form2
. Form1
a un bouton qui, lorsqu’il est cliqué, appelle l’événement Click
. Le gestionnaire de cet événement crée une nouvelle instance du Form2
formulaire et définit l’emplacement :
private void button1_Click(object sender, EventArgs e)
{
Form2 form = new Form2();
form.Location = new Point(0, 0);
form.Show();
}
Private Sub Button1_Click(sender As Object, e As EventArgs)
Dim form = New Form2 With {
.Location = New Drawing.Point(0, 0)
}
form.Show()
End Sub
Si ce Location
n’est pas défini, la position par défaut du formulaire est basée sur la valeur définie par la StartPosition
propriété au moment du design.
Voir aussi
.NET Desktop feedback