对于一个可能愚蠢的问题感到抱歉,我仍然是新人。我非常感谢你的帮助。 参考Get a Windows Forms control by name in C# 但我没有“this.Controls”可用。我在这里缺少什么吗?
换句话说,当我输入“this”时。和visual studio填充选项列表,没有“控件”选项。
答案 0 :(得分:4)
在WPF中,您应该尝试this.FindName(string name)
Button b = (Button)this.FindName("button1");
答案 1 :(得分:1)
你给的链接是针对Winforms的,你正在寻找一种不同的WPF方式。
答案 2 :(得分:1)
如果您想在任何原因迭代控件,在Window类中,您可以遍历LayoutRoot的子项(例如)
foreach (object o in this.LayoutRoot.Children)
{
MessageBox.Show(o.GetType().Name);
}
请记住,孩子们也可以包含孩子,因此您需要根据需要深入研究每个孩子。