Control.ClientSize Propiedad

Definición

Obtiene o establece el alto y el ancho del área cliente del control.

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

Valor de propiedad

Size

Size que representa las dimensiones del área cliente del control.

Atributos

Ejemplos

En el ejemplo de código siguiente se cambia el tamaño del control especificado para que el control admita su texto con formato. El texto con formato es la Text propiedad con el control asignado Font al texto. El AutoSizeControl método de este ejemplo también tiene un textPadding parámetro que representa el relleno que se va a aplicar a todos los bordes del control. Para que el relleno aparezca igual, alinee el texto con el valor, si el ContentAlignment.MiddleCenter control lo admite.

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

Comentarios

El área cliente de un control es los límites del control, menos los elementos no cliente, como barras de desplazamiento, bordes, barras de título y menús. Se SetClientSizeCore llama al método para establecer la ClientSize propiedad . La ClientSize propiedad no siempre se cambia a través de su set método, por lo que debe invalidar el SetClientSizeCore método para asegurarse de que el código se ejecuta cuando se establece la ClientSize propiedad.

Las Size.Width propiedades y Size.Height representan el ancho y alto del área cliente del control. Puede usar esta propiedad para obtener el tamaño del área cliente del control para tareas como dibujar en la superficie del control.

Para obtener más información sobre cómo dibujar en controles, vea Representación de un control Windows Forms.

Nota

No se puede enlazar la configuración de la aplicación a esta propiedad. Para obtener más información sobre la configuración de la aplicación, consulte Introducción a la configuración de la aplicación.

Se aplica a

Consulte también