FrameworkElement.GetTemplateChild(String) Método

Definição

Retorna o elemento nomeado na árvore visual de um ControlTemplate instanciado.Returns the named element in the visual tree of an instantiated ControlTemplate.

protected public:
 System::Windows::DependencyObject ^ GetTemplateChild(System::String ^ childName);
protected internal System.Windows.DependencyObject GetTemplateChild (string childName);
member this.GetTemplateChild : string -> System.Windows.DependencyObject
Protected Friend Function GetTemplateChild (childName As String) As DependencyObject

Parâmetros

childName
String

Nome do filho a ser localizado.Name of the child to find.

Retornos

O elemento solicitado.The requested element. Poderá ser null se nenhum elemento com o nome solicitado existir.May be null if no element of the requested name exists.

Comentários

Os modelos no WPFWPF têm um namescope independente.Templates in WPFWPF have a self-contained namescope. Isso ocorre porque os modelos são reutilizados e qualquer nome definido em um modelo não pode permanecer exclusivo quando várias instâncias de um controle instanciam seu modelo.This is because templates are re-used, and any name defined in a template cannot remain unique when multiple instances of a control each instantiate its template. Chame o método GetTemplateChild para retornar referências a objetos provenientes do modelo depois que ele for instanciado.Call the GetTemplateChild method to return references to objects that come from the template after it is instantiated. Você não pode usar o método FrameworkElement.FindName para localizar itens de modelos porque FrameworkElement.FindName atua em um escopo mais geral e não há nenhuma conexão entre a própria classe ControlTemplate e o modelo instanciado quando ela é aplicada.You cannot use the FrameworkElement.FindName method to find items from templates because FrameworkElement.FindName acts in a more general scope, and there is no connection between the ControlTemplate class itself and the instantiated template once it is applied.

FrameworkTemplate.FindName fornece a mesma função que esse método.FrameworkTemplate.FindName supplies the same function as this method. o FrameworkTemplate.FindName é público em vez de protegido, e usa considerações de escopo de nome corretas que permitem que ele acesse o modelo dentro de um elemento e encontre itens nomeados dentro dele.FrameworkTemplate.FindName is public instead of protected, and it uses correct name-scoping considerations that allow it to access the template within an element and find named items within it. Use FrameworkTemplate.FindName quando você precisar obter um elemento fora de seu controle pai.Use FrameworkTemplate.FindName when you need to get an element outside of its parent control.

Aplica-se a

Veja também