我有一个列表框,显示Name
个对象数组中的Movie
属性
<ListBox Name="listBox1" SelectionChanged="listBox1_SelectionChanged">
<ItemsControl ItemsSource="{Binding}" >
<ItemsControl.ItemTemplate >
<DataTemplate >
<TextBlock Name="textBlock1" Text="{Binding Name}"/>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</ListBox>
如何访问代码中ListBox内的textBlock文本?
我必须在代码中使用Name属性的值
答案 0 :(得分:1)
列表框报告的选定项目会向您显示拥有TextBlock中绑定的Name属性的对象。此时游戏结束了。
答案 1 :(得分:1)
当你执行上述操作时,itemscontrol中的每个文本块都有一个名称textblock1,其范围也限制在每个项容器中。
如果您想单独使用每个文本块,我通常会执行以下操作:
<TextBlock Text="{Binding Name}" Loaded="TextBlock_Loaded"/>
在代码中以任何你想要的方式注册那些文本框。可能是一个清单,
List<TextBlock> TextBlockList = new List<TextBlock>();
private void TextBlock_Loaded(object sender, RoutedEventArgs e)
{
TextBlockList.Add((TextBlock)sender);
}
例如,访问以下内容:
String FirstItem = TextBlockList.ElementAt(0).Text;