FrameworkElement.MeasureOverride(Size) FrameworkElement.MeasureOverride(Size) FrameworkElement.MeasureOverride(Size) FrameworkElement.MeasureOverride(Size) Method

Definition

Misst beim Überschreiben in einer abgeleiteten Klasse die für untergeordnete Elemente im Layout benötigte Größe und bestimmt eine Größe für die von FrameworkElement abgeleitete Klasse.When overridden in a derived class, measures the size in layout required for child elements and determines a size for the FrameworkElement-derived class.

protected:
 virtual System::Windows::Size MeasureOverride(System::Windows::Size availableSize);
protected virtual System.Windows.Size MeasureOverride (System.Windows.Size availableSize);
abstract member MeasureOverride : System.Windows.Size -> System.Windows.Size
override this.MeasureOverride : System.Windows.Size -> System.Windows.Size
Protected Overridable Function MeasureOverride (availableSize As Size) As Size

Parameter

availableSize
Size Size Size Size

Die verfügbare Größe, die dieses Element untergeordneten Elementen bereitstellen kann.The available size that this element can give to child elements. „Unendlich“ kann als Wert angegeben werden, um festzulegen, dass das Element an die Größe des jeweiligen Inhalts angepasst wird.Infinity can be specified as a value to indicate that the element will size to whatever content is available.

Gibt zurück

Die für dieses Element beim Layout benötigte Größe, basierend auf der Berechnung der Größen der untergeordneten Elemente.The size that this element determines it needs during layout, based on its calculations of child element sizes.

Hinweise

Über MeasureOverride schreiben Sie, um ein benutzerdefiniertes layoutgrößenverhalten für Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF) Ihr Element zu implementierenOverride MeasureOverride to implement custom layout sizing behavior for your element as it participates in the Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF) layout system. Ihre Implementierung sollte folgende Aktionen ausführen:Your implementation should do the following:

  1. Iterieren Sie die jeweilige Auflistung von untergeordneten Elementen, die Teil des Layouts sind Measure , und fordern Sie für jedes untergeordnete Element an.Iterate your element's particular collection of children that are part of layout, call Measure on each child element.

  2. Sofort auf das untergeordnete Element (Dies wird als Eigenschaft festgelegt Measure , nachdem aufgerufen wurde). DesiredSizeImmediately get DesiredSize on the child (this is set as a property after Measure is called).

  3. Berechnet die gewünschte Netzwerkgröße des übergeordneten Elements basierend auf der Messung der untergeordneten Elemente.Compute the net desired size of the parent based upon the measurement of the child elements.

Der Rückgabewert von MeasureOverride sollte die gewünschte Größe des Elements sein, die dann die Maßeinheit für das übergeordnete Element des aktuellen Elements wird.The return value of MeasureOverride should be the element's own desired size, which then becomes the measure input for the parent element of the current element. Derselbe Prozess wird über das Layoutsystem fortgesetzt, bis das Stamm Element der Seite erreicht ist.This same process continues through the layout system until the root element of the page is reached.

Während dieses Vorgangs können untergeordnete Elemente eine größere DesiredSize Größe als die anfängliche availableSize zurückgeben, um anzugeben, dass das untergeordnete Element mehr Platz benötigt.During this process, child elements might return a larger DesiredSize size than the initial availableSize to indicate that the child element wants more space. Dies kann in ihrer eigenen Implementierung erfolgen, indem ein Bild lauffähiger Bereich eingeführt wird, indem die Größe des übergeordneten Steuer Elements geändert wird, indem eine gestapelte Reihenfolge oder eine beliebige Anzahl von Lösungen zum Messen oder Anordnen von Inhalten festgelegt wird.This might be handled in your own implementation by introducing a scrollable region, by resizing the parent control, by establishing some manner of stacked order, or any number of solutions for measuring or arranging content.

Wichtig

Elemente sollten während Measure dieses Vorgangs für jedes untergeordnete Element aufgerufen werden. andernfalls werden die untergeordneten Elemente nicht ordnungsgemäß formatiert oder angeordnet.Elements should call Measure on each child during this process, otherwise the child elements will not be correctly sized or arranged.

Hinweise für Vererber

Der folgende nicht Kompilier Bare Code zeigt dieses Implementierungs Muster.The following non-compiling code shows this implementation pattern. VisualChildren stellt eine Aufzähl Bare Auflistungs Eigenschaft von untergeordneten Elementen dar, die von Ihrem eigenen Element definiert werden sollten.VisualChildren represents an enumerable collection property of children that your own element should define. Die-Eigenschaft kann beliebig benannt werden.The property can be named anything. VisualChildren ist ein Platzhalter Name für dieses Beispiel. " WPFWPF VisualChildren " APIAPI ist kein, wie von oder einem Teil eines Benennungs Musters bereitgestellt.VisualChildren is a placeholder name for purposes of this example, VisualChildren is not an APIAPI as provided by WPFWPF or a part of a naming pattern.

[! Code-csharpcorepseudocode # femessreoverride] [! Code-vbcorepseudocode # femessreoverride][!code-csharpCorePseudocode#FEMeasureOverride] [!code-vbCorePseudocode#FEMeasureOverride]

Gilt für: