(0) exportieren Drucken
Alle erweitern
Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
Übersetzung
Original

FrameworkElement.Height-Eigenschaft

Ruft die vorgeschlagene Höhe des Elements ab oder legt diese fest.

Namespace:  System.Windows
Assembly:  PresentationFramework (in PresentationFramework.dll)
XMLNS für XAML: http://schemas.microsoft.com/winfx/2006/xaml/presentation, http://schemas.microsoft.com/netfx/2007/xaml/presentation

[TypeConverterAttribute(typeof(LengthConverter))]
[LocalizabilityAttribute(LocalizationCategory.None, Readability = Readability.Unreadable)]
public double Height { get; set; }
<object Height="double"/>
- or -
<object Height="qualifiedDouble"/>
- or -
<object Height="Auto"/>

XAML-Werte

double

Double

Die Zeichenfolgendarstellung eines Double-Werts, der größer oder gleich 0,0 ist. In den Hinweisen finden Sie Informationen über obere Grenzen. Dieser Wert wird als geräteunabhängige Einheit (1/96 Zoll)-Maß interpretiert. Zeichenfolgen müssen nicht explizit Dezimaltrennzeichen enthalten. Der Wert 1 ist z. B. zulässig.

qualifiedDouble

Ein double-Wert, wie oben beschrieben, auf den eine der folgenden Zeichenfolgen zur Einheitendeklaration folgt: px, in, cm, pt.

px (Standardwert) ist geräteunabhängige Einheiten (1/96th inch per unit)

in ist Zoll, 1 Zoll == 96 px

cm ist Zentimeter, 1 cm = (96/2,54) px

pt ist Punkt, 1 pt = (96/72) px

Auto

Aktiviert die automatische Größenanpassung. Siehe Hinweise.

Eigenschaftswert

Typ: System.Double
Die Höhe des Elements in geräteunabhängige Einheiten (1/96th inch per unit). Der Standardwert ist Double.NaN. Dieser Wert muss größer oder gleich 0,0 sein. In den Hinweisen finden Sie Informationen über obere Grenzen.

Bezeichnerfeld

HeightProperty

Auf true festgelegte Metadateneigenschaften

AffectsMeasure

Height ist eine der drei schreibbaren Eigenschaften für FrameworkElement zum Angeben von Höheninformationen. Bei den anderen beiden handelt es sich um MinHeight und MaxHeight. Wenn ein Konflikt zwischen diesen Werten vorliegt, lautet die Anwendungsreihenfolge zur Bestimmung der tatsächlichen Höhe wie folgt: MinHeight, dann MaxHeight und schließlich, wenn sie innerhalb der Grenzen liegt, Height.

Wenn dieses Element ein untergeordnetes Element in einem anderen Element ist, führt das Festlegen dieser Eigenschaft lediglich zu einem Schätzwert. Das Layoutsystem und die besondere Layoutlogik des übergeordneten Elements verwenden den Wert als nicht bindende Eingabe im Layoutvorgang. Praktisch bedeutet dies, dass ein FrameworkElement nahezu immer ein untergeordnetes Element ist, auch wenn Sie die Height für Window festlegen. (Für ein Window wird dieser Wert verwendet, wenn das zugrunde liegende Anwendungsmodell die grundlegenden Renderingannahmen erstellt, mit denen das Handle des Fensters (Hwnd) erstellt wird, in dem die Anwendung gehostet wird.)

Zusätzlich zu den akzeptablen Double-Werten kann diese Eigenschaft auch Double.NaN sein. Auf diese Weise wird das automatische Größenanpassungsverhalten in Code angegeben. In XAML legen Sie den Wert auf die Zeichenfolge "Auto" (keine Unterscheidung von Groß- und Kleinschreibung) fest, um das automatische Größenanpassungsverhalten zu aktivieren. Das automatische Größenanpassungsverhalten impliziert, dass das Element die verfügbare Höhe ausfüllt. Beachten Sie jedoch, dass bestimmte Steuerelemente häufig Standardwerte aus den Standarddesignstilen bereitstellen, mit denen das automatische Größenanpassungsverhalten deaktiviert wird, bis es explizit wieder aktiviert wird.

Der Rückgabewert dieser Eigenschaft ist stets mit dem Wert identisch, auf den sie festgelegt wurde. Im Gegensatz dazu kann sich der Wert der ActualHeight ändern. Dies kann vorübergehend oder aber statisch geschehen, wenn das Layout die vorgeschlagene Größe aus bestimmtem Grund abgelehnt hat. Das Layoutsystem selbst funktioniert relativ zur Festlegung der Height des Eigenschaftensystems asynchron und hat die Änderung dieser Eigenschaft für die Größenanpassung möglicherweise noch nicht verarbeitet.

Die Wertbeschränkungen für den Double-Wert werden von einem ValidateValueCallback-Mechanismus erzwungen. Wenn Sie versuchen, einen ungültigen Wert festzulegen, wird eine Laufzeitausnahme ausgelöst.

Zusätzlich zur Validierungsprüfung besteht eine nicht deterministische Grenze für den oberen Wert für Height, die durch das Layoutsystem erzwungen wird (es handelt sich um eine sehr große Zahl, die größer als Single.MaxValue, aber kleiner als Double.MaxValue ist). Wenn diese Grenze überschritten wird, wird das Element nicht gerendert, aber auch keine Ausnahme ausgelöst. Legen Sie Height nicht auf einen Wert fest, der beträchtlich größer als die maximale Größe einer möglichen optischen Anzeige ist, da andernfalls die nicht deterministische obere Grenze überschritten werden kann.

In diesem Beispiel werden die Unterschiede im Renderingverhalten zwischen den vier höhenbezogenen Eigenschaften in Windows Presentation Foundation (WPF) visuell veranschaulicht.

Die Höhenmerkmale eines Elements werden von vier Eigenschaften beschrieben, die von der FrameworkElement-Klasse verfügbar gemacht werden. Diese vier Eigenschaften können zu Konflikten führen. Sollte dies der Fall sein, wird der vorrangige Wert folgendermaßen definiert: Der MinHeight-Wert hat Vorrang vor dem MaxHeight-Wert, der wiederum Vorrang vor dem Height-Wert hat. Eine vierte Eigenschaft, ActualHeight, ist schreibgeschützt und meldet die tatsächliche Höhe, wie von Interaktionen mit dem Layoutprozess bestimmt.

In den folgenden Extensible Application Markup Language (XAML)-Beispielen wird ein Rectangle-Element (rect1) als untergeordnetes Element der Canvas dargestellt. Die Höheneigenschaften von einem Rectangle können mithilfe einer Reihe von ListBox-Elementen geändert werden, die die Eigenschaftswerte von MinHeight, MaxHeight und Height darstellen. Auf diese Weise wird die Rangfolge jeder Eigenschaft visuell angezeigt.


<Canvas Height="200" MinWidth="200" Background="#b0c4de" VerticalAlignment="Top"  HorizontalAlignment="Center" Name="myCanvas" Margin="0,0,0,50">
    <Rectangle HorizontalAlignment="Center" Canvas.Top="50" Canvas.Left="50"  Name="rect1" Fill="#4682b4" Height="100" Width="100"/>
</Canvas>


...


    <TextBlock Grid.Row="1" Grid.Column="0" Margin="10,0,0,0" TextWrapping="Wrap">Set the Rectangle Height:</TextBlock>
    <ListBox Grid.Column="1" Grid.Row="1" Margin="10,0,0,0" Height="50" Width="50" SelectionChanged="changeHeight">
      <ListBoxItem>25</ListBoxItem>
      <ListBoxItem>50</ListBoxItem>
      <ListBoxItem>75</ListBoxItem>
      <ListBoxItem>100</ListBoxItem>
      <ListBoxItem>125</ListBoxItem>
      <ListBoxItem>150</ListBoxItem>
      <ListBoxItem>175</ListBoxItem>
      <ListBoxItem>200</ListBoxItem>
    </ListBox>

	<TextBlock Grid.Row="1" Grid.Column="2" Margin="10,0,0,0" TextWrapping="Wrap">Set the Rectangle MinHeight:</TextBlock>
    <ListBox Grid.Column="3" Grid.Row="1" Margin="10,0,0,0" Height="50" Width="50" SelectionChanged="changeMinHeight">
      <ListBoxItem>25</ListBoxItem>
      <ListBoxItem>50</ListBoxItem>
      <ListBoxItem>75</ListBoxItem>
      <ListBoxItem>100</ListBoxItem>
      <ListBoxItem>125</ListBoxItem>
      <ListBoxItem>150</ListBoxItem>
      <ListBoxItem>175</ListBoxItem>
      <ListBoxItem>200</ListBoxItem>
  </ListBox>      

    <TextBlock Grid.Row="1" Grid.Column="4" Margin="10,0,0,0" TextWrapping="Wrap">Set the Rectangle MaxHeight:</TextBlock>
    <ListBox Grid.Column="5" Grid.Row="1" Margin="10,0,0,0" Height="50" Width="50" SelectionChanged="changeMaxHeight">
      <ListBoxItem>25</ListBoxItem>
      <ListBoxItem>50</ListBoxItem>
      <ListBoxItem>75</ListBoxItem>
      <ListBoxItem>100</ListBoxItem>
      <ListBoxItem>125</ListBoxItem>
      <ListBoxItem>150</ListBoxItem>
      <ListBoxItem>175</ListBoxItem>
      <ListBoxItem>200</ListBoxItem> 
    </ListBox>


In den folgenden CodeBehind-Beispielen werden die Ereignisse behandelt, die das SelectionChanged-Ereignis auslöst. Jeder Handler übernimmt die Eingabe aus ListBox, analysiert den Wert als Double und wendet den Wert auf die angegebene höhenbezogene Eigenschaft an. Die Höhenwerte werden außerdem in eine Zeichenfolge konvertiert und in verschiedene TextBlock-Elemente geschrieben (die Definition dieser Elemente wird nicht im ausgewählten XAML angezeigt).


private void changeHeight(object sender, SelectionChangedEventArgs args)
{
    ListBoxItem li = ((sender as ListBox).SelectedItem as ListBoxItem);
    Double sz1 = Double.Parse(li.Content.ToString());
    rect1.Height = sz1;
    rect1.UpdateLayout();
    txt1.Text= "ActualHeight is set to " + rect1.ActualHeight;
    txt2.Text= "Height is set to " + rect1.Height;
    txt3.Text= "MinHeight is set to " + rect1.MinHeight;
    txt4.Text= "MaxHeight is set to " + rect1.MaxHeight;
}
private void changeMinHeight(object sender, SelectionChangedEventArgs args)
{
    ListBoxItem li = ((sender as ListBox).SelectedItem as ListBoxItem);
    Double sz1 = Double.Parse(li.Content.ToString());
    rect1.MinHeight = sz1;
    rect1.UpdateLayout();
    txt1.Text= "ActualHeight is set to " + rect1.ActualHeight;
    txt2.Text= "Height is set to " + rect1.Height;
    txt3.Text= "MinHeight is set to " + rect1.MinHeight;
    txt4.Text= "MaxHeight is set to " + rect1.MaxHeight;
}
private void changeMaxHeight(object sender, SelectionChangedEventArgs args)
{
    ListBoxItem li = ((sender as ListBox).SelectedItem as ListBoxItem);
    Double sz1 = Double.Parse(li.Content.ToString());
    rect1.MaxHeight = sz1;
    rect1.UpdateLayout();
    txt1.Text= "ActualHeight is set to " + rect1.ActualHeight;
    txt2.Text= "Height is set to " + rect1.Height;
    txt3.Text= "MinHeight is set to " + rect1.MinHeight;
    txt4.Text= "MaxHeight is set to " + rect1.MaxHeight;
}


Das vollständige Beispiel finden Sie unter Beispiel für Height-Eigenschaften.

.NET Framework

Unterstützt in: 4.5, 4, 3.5, 3.0

.NET Framework Client Profile

Unterstützt in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core-Rolle wird nicht unterstützt), Windows Server 2008 R2 (Server Core-Rolle wird mit SP1 oder höher unterstützt; Itanium wird nicht unterstützt)

Es werden nicht alle Versionen sämtlicher Plattformen von .NET Framework unterstützt.. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

Community-Beiträge

HINZUFÜGEN
Anzeigen:
© 2014 Microsoft