FrameworkElement.ParentLayoutInvalidated(UIElement) Método

Definição

Dá suporte a implementações de layout incremental em subclasses especializadas de FrameworkElement.Supports incremental layout implementations in specialized subclasses of FrameworkElement. ParentLayoutInvalidated(UIElement) é chamado quando um elemento filho invalidou uma propriedade que é marcada nos metadados como afetando a medida pai ou os passes de organização durante o layout.ParentLayoutInvalidated(UIElement) is invoked when a child element has invalidated a property that is marked in metadata as affecting the parent's measure or arrange passes during layout.

protected public:
 virtual void ParentLayoutInvalidated(System::Windows::UIElement ^ child);
protected internal virtual void ParentLayoutInvalidated (System.Windows.UIElement child);
abstract member ParentLayoutInvalidated : System.Windows.UIElement -> unit
override this.ParentLayoutInvalidated : System.Windows.UIElement -> unit
Protected Friend Overridable Sub ParentLayoutInvalidated (child As UIElement)

Parâmetros

child
UIElement

O elemento filho que relata a alteração.The child element reporting the change.

Comentários

Se esse elemento tiver um elemento filho no qual alguma propriedade foi invalidada e a propriedade tiver sido marcada como AffectsParentMeasure ou AffectsParentArrange nos metadados de propriedade durante o registro, esse método será invocado.If this element has a child element on which some property was invalidated and the property was marked as AffectsParentMeasure or AffectsParentArrange in property metadata during registration, this method is invoked. A invocação de método notifica o elemento pai que o elemento filho específico deve ser remedido se esse elemento der suporte à atualização parcial (incremental) do layout.The method invocation notifies the parent element which particular child element must be re-measured if this element supports partial (incremental) update of layout.

Por padrão, FrameworkElement não dá suporte ao layout incremental e, na classe FrameworkElement, esse método não tem nenhuma implementação padrão.By default, FrameworkElement does not support incremental layout, and in the FrameworkElement class this method has no default implementation. O cenário em que substituir esse método seria necessário não é comum, pois ele requer que você modifique o comportamento padrão do sistema de layout.The scenario where overriding this method would be necessary is not common, because it requires you to modify the default layout system behavior.

Um cenário de implementação de exemplo pode ser se uma classe tivesse limitações de tipo para possíveis elementos filho que são significativamente mais restritivos do que o sistema de layout no nível de estrutura do WPF.An example implementation scenario might be if a class had type limitations for possible child elements that are significantly more restrictive than the WPF framework-level layout system. Devido à natureza desses elementos personalizados, as alterações de propriedade podem ser deliberadamente adiadas quando você implementa um comportamento de layout personalizado.Because of the nature of these custom elements, property changes could be deliberately deferred when you implement some custom layout behavior. Por exemplo, as substituições de método Measure/organize, que tentam otimizar a passagem de renderização de elemento filho, podem ser adiadas para determinados tipos de alterações que normalmente resultarão em outra passagem de layout.For instance, measure/arrange method overrides, which try to optimize the child element render pass, could be deferred for certain types of changes that would ordinarily result in another layout pass.

Aplica-se a