Control.ClientSize Propriété

Définition

Obtient ou définit la hauteur et la largeur de la zone cliente du contrôle.

public:
 property System::Drawing::Size ClientSize { System::Drawing::Size get(); void set(System::Drawing::Size value); };
[System.ComponentModel.Browsable(false)]
public System.Drawing.Size ClientSize { get; set; }
[<System.ComponentModel.Browsable(false)>]
member this.ClientSize : System.Drawing.Size with get, set
Public Property ClientSize As Size

Valeur de propriété

Size

Size qui représente les dimensions de la zone cliente du contrôle.

Attributs

Exemples

L’exemple de code suivant redimensionne le contrôle spécifié afin que le contrôle puisse prendre en charge son texte mis en forme. Le texte mis en forme est la Text propriété avec l’affectation Font du contrôle au texte. La AutoSizeControl méthode de cet exemple a également un textPadding paramètre qui représente le remplissage à appliquer à tous les bords du contrôle. Pour que le remplissage apparaisse égal, alignez le texte avec la ContentAlignment.MiddleCenter valeur, si votre contrôle le prend en charge.

private:
   void AutoSizeControl( Control^ control, int textPadding )
   {
      
      // Create a Graphics object for the Control.
      Graphics^ g = control->CreateGraphics();
      
      // Get the Size needed to accommodate the formatted Text.
      System::Drawing::Size preferredSize = g->MeasureString( control->Text, control->Font ).ToSize();
      
      // Pad the text and resize the control.
      control->ClientSize = System::Drawing::Size( preferredSize.Width + (textPadding * 2), preferredSize.Height + (textPadding * 2) );
      
      // Clean up the Graphics object.
      delete g;
   }
private void AutoSizeControl(Control control, int textPadding)
{
   // Create a Graphics object for the Control.
   Graphics g = control.CreateGraphics();

   // Get the Size needed to accommodate the formatted Text.
   Size preferredSize = g.MeasureString(
      control.Text, control.Font).ToSize();

   // Pad the text and resize the control.
   control.ClientSize = new Size(
      preferredSize.Width + (textPadding * 2), 
      preferredSize.Height+(textPadding * 2) );

   // Clean up the Graphics object.
   g.Dispose();
}
Private Sub AutoSizeControl(control As Control, textPadding As Integer)
   ' Create a Graphics object for the Control.
   Dim g As Graphics = control.CreateGraphics()
   
   ' Get the Size needed to accommodate the formatted Text.
   Dim preferredSize As Size = g.MeasureString( _
     control.Text, control.Font).ToSize()
   
   ' Pad the text and resize the control.
   control.ClientSize = New Size( _
     preferredSize.Width + textPadding * 2, _
     preferredSize.Height + textPadding * 2)
   
   ' Clean up the Graphics object.
   g.Dispose()
End Sub

Remarques

La zone cliente d’un contrôle est les limites du contrôle, moins les éléments non clients tels que les barres de défilement, les bordures, les barres de titre et les menus. La SetClientSizeCore méthode est appelée pour définir la ClientSize propriété. La ClientSize propriété n’est pas toujours modifiée par le biais de sa set méthode. Vous devez donc remplacer la SetClientSizeCore méthode pour vous assurer que votre code est exécuté lorsque la ClientSize propriété est définie.

Les Size.Width propriétés et Size.Height la largeur représentent la largeur et la hauteur de la zone cliente du contrôle. Vous pouvez utiliser cette propriété pour obtenir la taille de la zone cliente du contrôle pour des tâches telles que le dessin sur la surface du contrôle.

Pour plus d’informations sur le dessin sur les contrôles, consultez Rendu d’un contrôle Windows Forms.

Notes

Vous ne pouvez pas lier les paramètres d’application à cette propriété. Pour plus d’informations sur les paramètres d’application, consultez Vue d’ensemble des paramètres d’application.

S’applique à

Voir aussi