在我的WPF项目中,我有一个System.Windows.Controls.UserControl控件。如何在那个控制器中找到一个控件?
答案 0 :(得分:1)
如果我理解你的问题,请使用VisualTree。
参考msdn:http://msdn.microsoft.com/en-us/library/dd409789.aspx
答案 1 :(得分:1)
在这种情况下,你可能想要走可视树,就像这个扩展方法那样:
internal static T FindVisualChild<T>(this DependencyObject parent) where T : DependencyObject
{
if (parent == null)
{
return null;
}
DependencyObject parentObject = parent;
int childCount = VisualTreeHelper.GetChildrenCount(parent);
for (int i = 0; i < childCount; i++)
{
DependencyObject childObject = VisualTreeHelper.GetChild(parentObject, i);
if (childObject == null)
{
continue;
}
var child = childObject as T;
return child ?? FindVisualChild<T>(childObject);
}
return null;
}
它要求您知道要查找的控件的类型。