UIElement.InvalidateMeasure UIElement.InvalidateMeasure UIElement.InvalidateMeasure UIElement.InvalidateMeasure Method

Определение

Делает недействительным состояние измерения (структуру) элемента.Invalidates the measurement state (layout) for the element.

public:
 void InvalidateMeasure();
public void InvalidateMeasure ();
member this.InvalidateMeasure : unit -> unit
Public Sub InvalidateMeasure ()

Комментарии

Вызов этого метода также вызывается InvalidateArrange внутренним образом, нет необходимости вызывать InvalidateMeasure и InvalidateArrange в случае успеха.Calling this method also calls InvalidateArrange internally, there is no need to call InvalidateMeasure and InvalidateArrange in succession. После недействительности элемент будет обновлен макет, что будет происходить асинхронно, если только UpdateLayout не вызывается для принудительного изменения макета.After the invalidation, the element will have its layout updated, which will occur asynchronously, unless UpdateLayout is called to force a synchronous layout change.

Система макета уровня платформы WPF выполняет собственную обработку изменений в визуальном дереве элемента и в большинстве распространенных случаев недействительности макета система макета вызывает эквивалент этого метода при необходимости.The WPF framework-level layout system does its own handling of changes in the visual tree of an element, and in most common layout invalidation cases the layout system is calling the equivalent of this method when necessary. Этот метод следует вызывать только при создании полной реализации макета, которая выполняет прямую манипуляцию с деревом элементов или похожими расширенными сценариями.You should only call this method if you are producing a complete layout implementation, which does direct manipulation of the element tree, or similar advanced scenarios. Один из таких сложных сценариев состоит в том, что PropertyChangedCallback при создании для свойства зависимости, которое не находится Freezable в FrameworkElement производном классе или класса, который по-прежнему влияет на проход меры в макете при изменении.One such advanced scenario is if you are creating a PropertyChangedCallback for a dependency property that is not on a Freezable or FrameworkElement derived class that still influences the measure pass of layout when it changes.

Частое обращение InvalidateMeasure к или в частности UpdateLayout приводит к существенным последствиям для производительности.Frequent calls to InvalidateMeasure or in particular to UpdateLayout have significant performance consequences. Поэтому следует избегать вызова этого метода, если только не требуется абсолютное состояние макета для последующих вызовов API - интерфейсыAPIs в коде.Therefore, avoid calling this method unless you absolutely require precise layout state for subsequent calls to other API - интерфейсыAPIs in your code.

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