如何更改列表框项目';s在wp7中的可见性属性

本文关键字:wp7 属性 可见性 列表 何更改 项目 | 更新日期: 2023-09-27 18:25:35

例如:有一个列表框:

<ListBox Margin="24,107,12,28" Name="lb">
  <TextBlock Text="Text" TextWrapping="Wrap" FontSize="22" Visibility="Collapsed" />
  <TextBlock Text="Text2" TextWrapping="Wrap" FontSize="22" Visibility="Collapsed" />
  <TextBlock Text="Text3" TextWrapping="Wrap" FontSize="22" Visibility="Collapsed" />
</ListBox>

如何以编程方式更改TextBlocks的可见性属性?

如何更改列表框项目';s在wp7中的可见性属性

ListBox为每个项目生成一个类型为ListBoxItem的容器。您可以按如下方式访问它:

ListBoxItem lbi = lb.ItemContainerGenerator.ContainerFromIndex(0) as ListBoxItem
lbi.Visibility = Visibility.Collapsed;

如果您想要访问TextBlock,则需要浏览ListBoxItem的可视化树。例如,使用Linq到VisualTree:

TextBlock txt = lbi.Descendants<TextBlock>().Single() as TextBlock;