FrameworkElement.Height Propriedade

Definição

Obtém ou define a altura sugerida de um FrameworkElement.

public:
 property double Height { double get(); void set(double value); };
double Height();

void Height(double value);
public double Height { get; set; }
var double = frameworkElement.height;
frameworkElement.height = double;
Public Property Height As Double
<frameworkElement Height="double"/>
-or-
<frameworkElement Height="Auto"/>
 

Valor da propriedade

Double

double

A altura, em pixels, do objeto . O padrão é NaN. Exceto pelo valor naN especial, esse valor deve ser igual ou maior que 0.

Exemplos

Este exemplo mostra um conjunto de propriedades simples de um elemento de interface do usuário que é criado em tempo de execução e precisa de inicialização de seu conteúdo e propriedades de exibição básicas, como Height e Width e Background. (Background é, na verdade, uma propriedade Control , não definida por FrameworkElement.)

Button button2 = new Button();
button2.Height = 50;
button2.Width = 100;
button2.Background = new SolidColorBrush(Colors.Blue);
button2.Content = "Click Me";
Dim button2 As Button = New Button
button2.Height = 50
button2.Width = 100
button2.Background = New SolidColorBrush(Colors.Blue)
button2.Content = "Click Me"

Comentários

Height é uma das três propriedades graváveis no FrameworkElement que especificam informações de altura. Os outros dois são MinHeight e MaxHeight. Se houver um conflito entre esses valores, a ordem de aplicação para determinação de altura real é que primeiro MinHeight deve ser respeitado, depois MaxHeight e, por fim, se estiver dentro dos limites, Height.

Vários dos tipos derivados de FrameworkElement também são derivados de Shape. Nem todas as classes Shape usam Height ou Width para especificar sua aparência e, em vez disso, usam propriedades específicas que podem definir um conjunto de pontos. Nesse caso, uma Altura ou Largura é calculada, mas normalmente não é definida diretamente.

Classes personalizadas podem ter considerações semelhantes em que a classe pode ter propriedades mais significativas para especificar dimensões do que Height ou Width. Altura ou Largura ainda estão disponíveis como membros e são configuráveis.

O objeto em que as propriedades Height ou Width são definidas é quase sempre um objeto filho na coleção filho de outro pai e definir Height ou Width como um valor é apenas um valor sugerido para o processo de layout. O sistema de layout, bem como a lógica de layout específica da classe pai, usarão o valor como uma entrada não vinculante durante o processo de layout e talvez precisem cortar, redimensionar o objeto, redimensionar o contêiner ou alguma combinação desses comportamentos que abrange vários objetos participantes no layout. A margem e o preenchimento também influenciam o tamanho disponível. Para obter mais informações, consulte Alinhamento, margem e preenchimento.

O valor retornado dessa propriedade é sempre o mesmo que qualquer valor que foi definido para ela. Por outro lado, o valor da propriedade ActualHeight pode variar. A variação pode ocorrer estaticamente, porque o layout rejeitou o tamanho sugerido ou momentaneamente. O próprio sistema de layout funciona de forma assíncrona em relação ao conjunto de Height do sistema de propriedades, e o sistema de layout pode não ter processado essa alteração de propriedade de dimensionamento ainda.

Valores negativos para Height não são permitidos.

Além disso, não defina Height como um valor significativamente maior que o tamanho máximo de qualquer exibição visual possível.

"Auto" e NaN

O valor padrão de Height e Width é "Auto", representado por NaN. Na marcação XAML, você pode usar a cadeia de caracteres "Auto" para definir o valor como NaN.

Observação

Em C#, você pode obter NaN do Double.NaN.

No C++, você pode obter o NaN usando a NAN macro ou std::numeric_limits<double>::quiet_NaN().

Não use o == operador para testar o NaN.

Em C#, use Double.IsNaN() para testar o NaN.

No C++, use isnan() para testar o NaN.

O sistema de layout interpreta o valor "Automático" para geralmente significar que o objeto deve ser dimensionado para o tamanho disponível no layout, em vez de para um valor de pixel específico.

Aplica-se a

Confira também