【发布时间】:2011-04-16 21:52:10
【问题描述】:
请考虑以下 XAML 代码:
<ListBox Name="listBox1" ItemsSource="{Binding}" >
<ListBox.ItemTemplate>
<DataTemplate>
<Border Name="border1">
<TextBlock Text="{Binding}" />
</Border>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
我们给它分配一个简单的数组:
listBox1.DataContext = new[] { "A", "B", "C" };
现在的问题是我们如何访问为 Border(或 TextBlock 实例)生成的对象?
- “border1”是不可能的。它不存在。
-
listBox1.ItemContainerGenerator.ContainerFromIndex(0)返回一个 ListBoxItem,但该 ListBoxItem 的内容是 String 类型。 -
FindName("border1")返回 null
更新:我希望找到 3 个 Border 实例(和 3 个 TextBlock,每个 Border 一个)。
【问题讨论】:
标签: wpf xaml binding datatemplate