2012-02-24 70 views
0

例如: 有一個列表框:如何在wp7中更改列表框項目的可見性屬性?

<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的知名度屬性編程?

回答

5

ListBox爲每個項目生成一個類型爲ListBoxItem的容器。

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

如果你想訪問TextBlock您需要導航ListBoxItem的可視化樹:可以按如下方式訪問它。例如,使用Linq to VisualTree

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