UIElement.InvalidateArrange Метод

Определение

Отменяет состояние упорядочивания (макет) для UIElement. После недопустимости uiElement будет обновлен его макет, который будет выполняться асинхронно.

public:
 virtual void InvalidateArrange() = InvalidateArrange;
void InvalidateArrange();
public void InvalidateArrange();
function invalidateArrange()
Public Sub InvalidateArrange ()

Комментарии

Элементы управления, поддерживающие собственное свойство ориентации, могут вызывать InvalidateArrange при изменении этой ориентации в качестве способа восстановления макета для новой ориентации. InvalidateArrange также может вызываться из пользовательской логики макета в таких случаях, как если доступный размер не подходит, и логика позволяет использовать альтернативную стратегию макета, которая использует доступный размер по-разному.

UpdateLayout в основном эквивалентен вызову InvalidateMeasure и InvalidateArrange в последовательности.

Обновления макета могут быть вынуждены кодом приложения, а не полагаться на встроенное поведение системы макета. Однако это обычно не рекомендуется. Вызов InvalidateArrange, InvalidateMeasure или UpdateLayout обычно не требуется и может привести к снижению производительности при чрезмерном выполнении. Во многих ситуациях, когда код приложения может изменять свойства макета, система макета, вероятно, уже будет обрабатывать обновления асинхронно. Система макета также имеет оптимизацию для работы с каскадами изменений макета с помощью отношений родительского-дочернего элемента и принудительного макета с кодом приложения может работать в отношении таких оптимизаций. Тем не менее, возможно, что ситуации макета существуют в более сложных сценариях, когда принудительное создание макета является лучшим вариантом для устранения проблемы с временем или другой проблемы с макетом. Просто используйте его намеренно и экономно.

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

См. также раздел