2012-02-24 2 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;