FrameworkElement.Height Eigenschaft

Definition

Ruft die vorgeschlagene Höhe eines FrameworkElements ab oder legt diese fest.

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"/>
 

Eigenschaftswert

Double

double

Die Höhe des Objekts in Pixel. Der Standardwert ist NaN. Mit Ausnahme des speziellen NaN-Werts muss dieser Wert gleich oder größer 0 sein.

Beispiele

Dieses Beispiel zeigt einen einfachen Eigenschaftensatz eines UI-Elements, das zur Laufzeit erstellt wird und eine Initialisierung des Inhalts und der grundlegenden Anzeigeeigenschaften wie Höhe und Breite und Hintergrund erfordert. (Background ist eigentlich eine Control-Eigenschaft , die nicht von FrameworkElement definiert wird.)

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"

Hinweise

Height ist eine von drei beschreibbaren Eigenschaften in FrameworkElement , die Höheninformationen angeben. Die beiden anderen sind MinHeight und MaxHeight. Wenn es einen Konflikt zwischen diesen Werten gibt, ist die Reihenfolge der Anwendung für die tatsächliche Höhenermittlung, dass zuerst MinHeight , dann MaxHeight und schließlich, wenn es sich innerhalb der Grenzen befindet, Height berücksichtigt werden muss.

Mehrere von FrameworkElement abgeleitete Typen werden auch von Shape abgeleitet. Nicht alle Shape-Klassen verwenden Höhe oder Breite , um ihre Darstellung anzugeben, und verwenden stattdessen bestimmte Eigenschaften, die möglicherweise eine Reihe von Punkten definieren. In diesem Fall wird eine Höhe oder Breite berechnet, aber normalerweise nicht direkt festgelegt.

Benutzerdefinierte Klassen können ähnliche Überlegungen haben, bei denen die Klasse eigenschaften aufweisen kann, die für die Angabe von Dimensionen aussagekräftiger sind als Höhe oder Breite. Höhe oder Breite sind weiterhin als Member verfügbar und können festgelegt werden.

Das Objekt, in dem die Height - oder Width-Eigenschaften festgelegt sind, ist fast immer ein untergeordnetes Objekt in der untergeordneten Auflistung eines anderen übergeordneten Elements, und das Festlegen von Height oder Width auf einen Wert ist nur ein empfohlener Wert für den Layoutprozess. Das Layoutsystem sowie die spezielle Layoutlogik der übergeordneten Klasse verwenden den Wert während des Layoutprozesses als nicht bindungsfreie Eingabe und müssen möglicherweise das Objekt ausschneiden, die Größe des Objekts ändern, die Größe des Containers ändern oder eine Kombination dieser Verhaltensweisen, die mehrere teilnehmende Objekte im Layout umfassen. Ränder und Polster wirken sich auch auf die verfügbare Größe aus. Weitere Informationen hierzu finden Sie unter Ausrichtung, Rand und Abstand.

Der Rückgabewert dieser Eigenschaft ist immer mit jedem Wert identisch, der darauf festgelegt wurde. Im Gegensatz dazu kann der Wert der ActualHeight-Eigenschaft variieren. Die Varianz kann entweder statisch auftreten, da das Layout die vorgeschlagene Größe abgelehnt hat, oder vorübergehend. Das Layoutsystem selbst arbeitet asynchron relativ zur Höhe des Eigenschaftssystems, und das Layoutsystem hat diese Änderung der Größeneigenschaft möglicherweise noch nicht verarbeitet.

Negative Werte für Höhe sind nicht zulässig.

Legen Sie außerdem keine Höhe auf einen Wert fest, der wesentlich größer als die maximale Größe einer möglichen visuellen Anzeige ist.

"Auto" und NaN

Der Standardwert für Höhe und Breite ist "Auto", dargestellt durch NaN. Im XAML-Markup können Sie die Zeichenfolge "Auto" verwenden, um den Wert auf NaN festzulegen.

Hinweis

In C# können Sie NaN von Double.NaN abrufen.

In C++ können Sie NaN mithilfe des MakrosNAN oder std::numeric_limits<double>::quiet_NaN()abrufen.

Verwenden Sie den == Operator nicht, um auf NaN zu testen.

Verwenden Sie in C# Double.IsNaN(), um auf NaN zu testen.

Verwenden Sie in C++ isnan(), um auf NaN zu testen.

Das Layoutsystem interpretiert den "Auto"-Wert im Allgemeinen so, dass das Objekt auf die verfügbare Größe im Layout anstatt auf einen bestimmten Pixelwert festgelegt werden soll.

Gilt für:

Weitere Informationen