WPF中指定的对象懂指定Id的对象查找取得

/// <summary>
/// UIElementを検索する
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="obj"></param>
/// <param name="childName"></param>
/// <returns></returns>
public static T FindFirstVisualChild<T>(DependencyObject obj, string childName) where T : DependencyObject
{
if (obj == null)
{
return null;
}

for (int i = 0; i < VisualTreeHelper.GetChildrenCount(obj); i++)
{
DependencyObject child = VisualTreeHelper.GetChild(obj, i);
if (child != null && child is T && child.GetValue(FrameworkElement.NameProperty).ToString() == childName)
{
return (T)child;
}
else
{
T childOfChild = FindFirstVisualChild<T>(child, childName);
if (childOfChild != null)
{
return childOfChild;
}
}
}
return null;
}

原文地址:https://www.cnblogs.com/Mrs-lu/p/WPF_UIElement_get_method.html