我有一个具有ItemsControl的UserControl。此ItemsControl绑定到对象列表。为了显示这些对象,我有* DataTemplate * s来确定对象的呈现方式。
我希望能够检索控件的当前值,例如Text(如果它是TextBox)或SelectedItem(如果它是ComboBox)。
如何迭代这些动态生成的控件?我不知道控件的名称,因为它们是在运行时生成的。
谢谢..
答案 0 :(得分:1)
除了在可视化树中搜索控件及其模板属性之外,我能想到的最简单的原因可能是将ItemsControl数据源绑定到ObservableCollection。这就是为什么您可以动态地将任何类型的控件添加到列表中。
一旦这样做,您就可以轻松检查列表中每个UIElement的类型。例如;如果是文本框,则通过强制转换等方式获取文本属性。