FrameworkElement.Width Property

Ruft die Breite eines FrameworkElement ab oder legt diese fest.

Syntax


public double Width { get; set; }


<frameworkElement Width="double"/>
-or-
<frameworkElement Width="Auto"/>

Eigenschaftswert

Typ: System.Double [.NET] | float64 [C++]

Die Breite des Objekts in Pixel. Die Standardeinstellung lautet NaN. Mit Ausnahme des speziellen NaN-Werts muss dieser Wert größer oder gleich NULL sein.

Hinweise

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

Viele der von FrameworkElement abgeleiteten Typen sind auch von Shape abgeleitet. Nicht alle Shape-Klassen geben normalerweise ihre Darstellung mit Height oder Width an. Stattdessen verwenden sie bestimmte Eigenschaften, die möglicherweise einen Satz von Punkten definieren. In diesem Fall wird zwar eine Height oder Width berechnet, in der Regel aber nicht direkt festgelegt.

Für benutzerdefinierte Klassen gelten eventuell ähnliche Überlegungen, wenn die Klasse möglicherweise über Eigenschaften verfügt, die sich besser als Height oder Width zum Angeben von Abmessungen eignen. Height oder Width sind beide noch als Member verfügbar und sind festlegbar.

Das Objekt, in dem die Height-Eigenschaft oder die Width-Eigenschaft 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 vorgeschlagener Wert für den Layoutvorgang. Das Layoutsystem sowie die besondere Layoutlogik der Klasse des übergeordneten Objekts verwenden den Wert als nicht bindende Eingabe im Layoutvorgang. Möglicherweise ist es erforderlich, das Objekt abzuschneiden, seine Größe oder die Größe des Containers zu ändern oder eine Kombination dieser Aktionen auszuführen, die auf mehrere vom Layout betroffene Objekte angewendet 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 ActualWidth-Eigenschaft ändern. Die Varianz kann statisch sein, wenn das Layout die vorgeschlagene Größe ablehnt, oder temporär. Das Layoutsystem selbst funktioniert relativ zur Festlegung der Breite durch das Eigenschaftensystems asynchron, und das Layoutsystem hat die Änderung dieser Eigenschaft für die Größenanpassung möglicherweise noch nicht verarbeitet.

Für Width sind keine negativen Werte zulässig. Legen Sie außerdem Width nicht auf einen Wert fest, der erheblich größer als die maximale Größe einer beliebigen visuellen Anzeige ist.

"Auto"-Layout und Double.NaN

Der Standardwert von Height und von Width ist nicht 0, sondern Double.NaN. Height und Width unterstützen die Möglichkeit, ein nicht festgelegter "automatischer" Wert zu sein. Da es sich bei Height und Width um Double-Werte handelt, wird Double.NaN als besonderer Wert verwendet, um dieses "Auto"-Verhalten darzustellen. Für das Layoutsystem gibt der "Auto"-Wert an, dass im Allgemeinen für das Objekt die im Layout verfügbare Größe und kein bestimmter Pixelwert festgelegt werden soll. Wenn Sie das "Auto"-Verhalten für ein Objekt bei Verwendung des Objekts im Layout wünschen, ändern Sie nicht den Double.NaN-Standardwert von Height und Width. Wenn Sie zuvor festgelegte Werte haben und das Verhalten "Auto" mit Laufzeitcode erneut aktivieren möchten, legen Sie die Höhe und Breite speziell auf Double.NaN fest. In Vorlagen für visuelle Zustände können Sie ebenfalls explizit Height- und Width-Attribute in XAML für die Zeichenfolge "Auto" festlegen (statt des Werts Double).

Beispiele

Dieses Beispiel zeigt einen einfachen zur Laufzeit erstellten Eigenschaftensatz eines Benutzeroberflächenelements, dessen Inhalt und grundlegende Anzeigeeigenschaften wie Height, Width und Background initialisiert werden müssen.


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


Anforderungen

Mindestens unterstützter Client

Windows 8

Mindestens unterstützter Server

Windows Server 2012

Namespace

Windows.UI.Xaml
Windows::UI::Xaml [C++]

Metadaten

Windows.winmd

Siehe auch

FrameworkElement
ActualWidth
Height
Schnellstart: Definieren von Layouts

 

 

Anzeigen:
© 2014 Microsoft