WPF: Как найти визуального родителя заданного элемента UIElement (VB.NET)
Published in Полезные советы
Для поиска родителя любого UIElement на странице, напишем такой метод:
''' <summary>'
''' Возвращает визуального родителя заданного типа.'
''' </summary>'
''' <param name="child">Элемент, для которого нужно найти визуального родителя.'
''' <typeparam name="T">Тип искомого родителя.'
Public Shared Function FindVisualParent(Of T As DependencyObject)(ByVal child As DependencyObject) As T
Dim parentObject As DependencyObject = VisualTreeHelper.GetParent(child)
If (parentObject Is Nothing) Then
Return CType(Nothing, T)
End If
Dim parent As T = TryCast(parentObject, T)
If (Not parent Is Nothing) Then
Return parent
End If
Return FindVisualParent(Of T)(parentObject)
End Function