Kamil Hismatullin
Kamil Hismatullin

Reputation: 277

How can I change listbox item's visibility property in wp7?

For example: there is a listbox:

<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>

How can I change TextBlocks's visibility properties programmatically?

Upvotes: 0

Views: 1907

Answers (1)

ColinE
ColinE

Reputation: 70142

The ListBoxgenerates a container of type ListBoxItem for each item. You can access it as follows:

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

If you want access to the TextBlock you will need to navigate the visual tree of the ListBoxItem. For example, using Linq to VisualTree:

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

Upvotes: 5

Related Questions