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

Определение

Определяет шаблон для определения макета упорядочивания 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)

Параметры

finalRect
Rect Rect Rect Rect

Итоговая область в родительском элементе, которую элемент должен использовать для размещения себя и своих дочерних элементов.The final area within the parent that element should use to arrange itself and its child elements.

Примеры

ArrangeCore реализации должны вызывать базовую реализацию, чтобы вернуть размер, затем вызвать Arrange метод для каждого элемента видимого дочернего элемента и согласование возвращенных эти размеры Arrange вызовы в зависимости от размера базовую реализацию.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. Логику для выверки аспектом ArrangeCore реализация может отличаться в зависимости от характеристики разметки элемента.The logic for the reconciliation aspect of a ArrangeCore implementation might vary, depending on the layout characteristics of your element. В следующем примере шаблона VisualChildren — это гипотетический свойство, которое элемент может определить для перечисления его содержимого; UIElement определяет коллекции содержимого на этом уровне Архитектура уровня среды WPF откладывает поведение содержимого до производных элементов, например определенных элементов управления или базовых классов элементов управления.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

Комментарии

Примечание

Переопределение этого метода, имеет смысл только при наследовании в уровня ядра WPF, и вы не используете система макетов уровня среды WPF и FrameworkElement производного класса, так как FrameworkElement пломбы 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. Если вы используете систему макетов уровня среды WPF, соответствующий метод для переопределения для определенного класса макета упорядочить поведение ArrangeOverride.If you are using the WPF framework-level layout system, the appropriate method to override for class-specific layout arrange behavior is ArrangeOverride.

Примечания для тех, кто наследует этот метод

Если вы разрабатываете элементы уровня ядра WPF, следует переопределить этот метод, чтобы предоставить уникальный элемент уровня ядра WPF упорядочения поведение макета, или чтобы надлежащей структуры решения об элементах дочерних элементов.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. Переопределение может быть необходимо, если эти дочерние элементы не распознаются из заданному шаблону например ItemCollection.An override might be necessary if those child elements are not recognizable from a defined pattern such as an ItemCollection.

Родительский элемент необходимо вызвать метод определенного класса Arrange(Rect) для каждого дочернего элемента, в противном случае эти дочерние элементы не отображаются.A parent element must call the class-specific Arrange(Rect) on each child element, otherwise those child elements are not rendered.

Применяется к