Control.ClientSize Propriedade

Definição

Obtém ou define a altura e largura da área cliente do controlo.

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 Propriedade

A Size que representa as dimensões da área cliente do controlo.

Atributos

Exemplos

O exemplo de código seguinte redimensiona o controlo especificado para que este se adapte ao seu texto formatado. O texto formatado é a Text propriedade com os controlos atribuídos Font aplicados ao texto. O AutoSizeControl método neste exemplo também tem um textPadding parâmetro que representa o preenchimento a aplicar a todas as arestas do controlo. Para que o preenchimento pareça igual, alinhe o texto com o ContentAlignment.MiddleCenter valor, se o seu controlo o permitir.

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

Observações

A área cliente de um controlo é os limites do controlo, excluindo os elementos não clientes como barras de scroll, bordas, barras de título e menus. O SetClientSizeCore método é chamado para definir a propriedade ClientSize . A ClientSize propriedade nem sempre é alterada através do seu set método, por isso deve sobrepor-se ao SetClientSizeCore método para garantir que o seu código é executado quando a ClientSize propriedade for definida.

As Size.Width propriedades e Size.Height representam a largura e altura da área cliente do controlo. Pode usar esta propriedade para obter o tamanho da área cliente do controlo para tarefas como desenhar na superfície do controlo.

Para mais informações sobre desenhar em controlos, veja Rendering a Windows Forms Control.

Note

Não pode atribuir as definições da aplicação a esta propriedade. Para mais informações sobre as definições da aplicação, consulte Visão Geral das Definições da Aplicação.

Aplica-se a

Ver também