FrameworkElement.GetTemplateChild(String) FrameworkElement.GetTemplateChild(String) FrameworkElement.GetTemplateChild(String) FrameworkElement.GetTemplateChild(String) Method

Определение

Возвращает именованный элемент в визуальном дереве объекта ControlTemplate, для которого создан экземпляр.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

Параметры

childName
String String String String

Имя искомого дочернего элемента.Name of the child to find.

Возвраты

Запрошенный элемент.The requested element. Может иметь значение null, если элемента с запрошенным именем не существует.May be null if no element of the requested name exists.

Комментарии

Шаблоны в WPFWPF имеют автономную область имен.Templates in WPFWPF have a self-contained namescope. Это обусловлено тем, что шаблоны используются повторно, и любое имя, определенное в шаблоне, не может оставаться уникальным, если несколько экземпляров элемента управления создают свой шаблон.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. Вызовите GetTemplateChild метод, чтобы вернуть ссылки на объекты, поступающие из шаблона после создания экземпляра.Call the GetTemplateChild method to return references to objects that come from the template after it is instantiated. Нельзя использовать FrameworkElement.FindName метод для поиска элементов из шаблонов, поскольку FrameworkElement.FindName он действует в более общей области, и после применения шаблона не существует соединения между ControlTemplate самим классом и созданным шаблоном.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предоставляет ту же функцию, что и этот метод.FrameworkTemplate.FindName supplies the same function as this method. FrameworkTemplate.FindNameявляется открытым, а не защищенным, и использует правильные рекомендации по области имен, которые позволяют ему получить доступ к шаблону внутри элемента и найти именованные элементы внутри него.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. Используется FrameworkTemplate.FindName , если необходимо получить элемент за пределами родительского элемента управления.Use FrameworkTemplate.FindName when you need to get an element outside of its parent control.

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

Дополнительно