UIElement.ArrangeCore(Rect) UIElement.ArrangeCore(Rect) UIElement.ArrangeCore(Rect) UIElement.ArrangeCore(Rect) Method

Definizione

Definisce il modello per la definizione di layout per la disposizione a livello di base WPF.Defines the template for WPF core-level arrange layout definition.

protected:
 virtual void ArrangeCore(System::Windows::Rect finalRect);
protected virtual void ArrangeCore (System.Windows.Rect finalRect);
abstract member ArrangeCore : System.Windows.Rect -> unit
override this.ArrangeCore : System.Windows.Rect -> unit
Protected Overridable Sub ArrangeCore (finalRect As Rect)

Parametri

finalRect
Rect Rect Rect Rect

Area finale nel controllo padre che l'elemento deve usare per disporre se stesso e i relativi elementi figlio.The final area within the parent that element should use to arrange itself and its child elements.

Esempi

ArrangeCorele implementazioni devono chiamare l'implementazione di base per restituire una dimensione, quindi Arrange chiamare il metodo di ogni elemento figlio visibile e riconciliare le dimensioni restituite da queste Arrange chiamate con la dimensione dell'implementazione di base.ArrangeCore implementations should call the base implementation to return a size, then call the Arrange method of each visible child element, and reconcile the sizes returned by these Arrange calls with the size of the base implementation. La logica per l'aspetto di riconciliazione ArrangeCore di un'implementazione può variare a seconda delle caratteristiche del layout dell'elemento.The logic for the reconciliation aspect of a ArrangeCore implementation might vary, depending on the layout characteristics of your element. Nel modello di esempio seguente, VisualChildren è una proprietà ipotetica che può essere definita dall'elemento per consentire l'enumerazione del contenuto; UIElement non definisce raccolte di contenuto a questo livello, l'architettura a livello di Framework WPF rinvia il comportamento del contenuto a elementi derivati, ad esempio controlli specifici o classi base del controllo.In the following example template, VisualChildren is a hypothetical property that your element might define to help enumerate its content; UIElement does not define content collections at this level, the WPF framework-level architecture defers content behavior to derived elements such as specific controls or control base classes.

protected override void ArrangeCore(Rect finalRect)
{
     //Call base, it will set offset and RenderBounds to the finalRect:
     base.ArrangeCore(finalRect);
     foreach (UIElement child in VisualChildren)
     {
         child.Arrange(new Rect(childX, childY, childWidth, childHeight));
     }
 }
Protected Overrides Sub ArrangeCore(ByVal finalRect As Rect)
	 'Call base, it will set offset and RenderBounds to the finalRect:
	 MyBase.ArrangeCore(finalRect)
	 For Each child As UIElement In VisualChildren
		 child.Arrange(New Rect(childX, childY, childWidth, childHeight))
	 Next child
End Sub

Commenti

Nota

L'override di questo metodo è appropriato solo se si deriva a livello di core WPF e non si usa il sistema di layout a livello di Framework WPF e FrameworkElement la classe derivata, perché FrameworkElement Seals ArrangeCore.Overriding this method is only appropriate if you are deriving at the WPF core-level, and you are not using the WPF framework-level layout system and FrameworkElement derived class, because FrameworkElement seals ArrangeCore. Se si utilizza il sistema di layout a livello di Framework WPF, il metodo appropriato per eseguire l'override del comportamento di disposizione del ArrangeOverridelayout specifico della classe è.If you are using the WPF framework-level layout system, the appropriate method to override for class-specific layout arrange behavior is ArrangeOverride.

Note per gli eredi

Se si sviluppano elementi a livello di core WPF, è necessario eseguire l'override di questo metodo per fornire all'elemento a livello di core WPF un comportamento di layout di disposizione univoco o per prendere decisioni di layout appropriate sugli elementi figlio degli elementi.If you are developing elements at the WPF core level,you should override this method to give your WPF core-level element a unique arrange layout behavior, or to make proper layout decisions about the child elements of your elements. Potrebbe essere necessario eseguire una sostituzione se gli elementi figlio non sono riconoscibili da un modello definito, ItemCollectionad esempio.An override might be necessary if those child elements are not recognizable from a defined pattern such as an ItemCollection.

Un elemento padre deve chiamare la classe specifica Arrange(Rect) per ogni elemento figlio; in caso contrario, non viene eseguito il rendering degli elementi figlio.A parent element must call the class-specific Arrange(Rect) on each child element, otherwise those child elements are not rendered.

Si applica a