LogicalTreeHelper.FindLogicalNode(DependencyObject, String) Método

Definição

Tenta localizar e retornar um objeto que tenha o nome especificado. A pesquisa começa do objeto especificado e continua em subnodos da árvore lógica.

public:
 static System::Windows::DependencyObject ^ FindLogicalNode(System::Windows::DependencyObject ^ logicalTreeNode, System::String ^ elementName);
public static System.Windows.DependencyObject FindLogicalNode(System.Windows.DependencyObject logicalTreeNode, string elementName);
static member FindLogicalNode : System.Windows.DependencyObject * string -> System.Windows.DependencyObject
Public Shared Function FindLogicalNode (logicalTreeNode As DependencyObject, elementName As String) As DependencyObject

Parâmetros

logicalTreeNode
DependencyObject

O objeto do qual começar a pesquisar. Este objeto deve ser um FrameworkElement ou um FrameworkContentElement.

elementName
String

O nome do objeto a ser localizado.

Retornos

O objeto com o nome correspondente, se um for encontrado; retornará null se nenhum nome correspondente tiver sido encontrado na árvore lógica.

Comentários

Os métodos FrameworkContentElement.FindName são FrameworkElement.FindName superficialmente semelhantes a FindLogicalNode, mas operam por lógica diferente:

  • A direção FindLogicalNode de pesquisa é em direção a objetos filho (abaixo da árvore); a direção de pesquisa dos FindName métodos é para objetos pai (acima da árvore).

  • Os FindName métodos são regidos pelo conceito de um namescope XAML. O uso FindName de você tem a garantia de que existe apenas um objeto desse nome, pois os namescopes XAML impõem exclusividade. Por outro lado, FindLogicalNode ignora o namescope XAML e pode cruzar os limites do namescope XAML durante a pesquisa. Dessa forma, não há garantia de exclusividade do nome depois que os elementName limites são cruzados. Para obter mais informações sobre namescopes XAML, consulte WPF Namescopes XAML.

Aplica-se a