FrameworkElement.OnVisualParentChanged(DependencyObject) Método

Definição

Invocado quando o pai deste elemento na árvore visual é alterado. Anula OnVisualParentChanged(DependencyObject).

protected public:
 override void OnVisualParentChanged(System::Windows::DependencyObject ^ oldParent);
protected internal override void OnVisualParentChanged(System.Windows.DependencyObject oldParent);
override this.OnVisualParentChanged : System.Windows.DependencyObject -> unit
Protected Friend Overrides Sub OnVisualParentChanged (oldParent As DependencyObject)

Parâmetros

oldParent
DependencyObject

O antigo elemento parental. Pode indicar null que o elemento não tinha um pai visual anteriormente.

Observações

A árvore visual é potencialmente diferente da árvore lógica porque omite elementos que não são renderizados visualmente, como coleções, e expande alguns elementos com base na composição de temas e estilos. Para mais informações, consulte Árvores em WPF.

Notas para Herdeiros

A implementação padrão deste método virtual consulta o novo pai, gera vários eventos de inicialização e define flags internos sobre o estado de inicialização do FrameworkElement conforme apropriado. Finalmente, chama as implementações base sucessivas como declaradas por UIElement, que por sua vez chama a sua base em Visual. Chame sempre a implementação base para preservar este comportamento, caso contrário o comportamento da árvore de elementos para este elemento, quando declarado como filho de outro elemento, pode não ser o esperado.

Algumas classes Windows Presentation Foundation (WPF) existentes sobrepõem este método, por exemplo: OnVisualParentChanged(DependencyObject), OnVisualParentChanged(DependencyObject). O cenário mais comum é impor que o novo progenitor deve ser de um tipo específico. Isto pode envolver lançar uma exceção se o novo progenitor falhou algum tipo de teste de tipo. Existe uma versão especializada deste cenário em implementações para itens de lista e itens de menu, que não fazem sentido fora de um visual pai que possui uma coleção apropriada para os armazenar. Note-se que estes casos não levantam necessariamente exceções, pois podem existir cenários concebidos que dependem de elementos de reparentalização que momentaneamente não têm os seus pais "regulares".

Este método é também sobreposto em certos elementos que são tipicamente o elemento raiz, como Window. Outro caso são elementos que são o elemento raiz aparente na marcação, mas que autogeram uma infraestrutura maior numa árvore lógica compilada (como Page). As Window implementações e Page selam deliberadamente o método.

Aplica-se a

Ver também