views:

235

answers:

1

The Items collection of a ListView contains the actual business objects. How do I obtain the corresponding ListViewItem given a business object (SelectedItem)?

+1  A: 

If you really need to, use the ListView's ItemsContainerGenerator property. However, you can often get away with not setting an ItemContainerStyle with Bindings:

<ListView>
    <ListView.ItemContainerStyle>
        <Style TargetType="ListViewItem">
            <Setter Property="IsSelected" Value="{Binding IsSpecial}"/>
        </Style>
    </ListView.ItemContainerStyle>
</ListView>

In the above XAML, the ListViewItems will be selected if the underlying bound object's IsSpecial property is true. Selecting/deselecting will update the IsSpecial property.

HTH, Kent

Kent Boogaart
ListView.ItemContainerGenerator.ContainerFromItem(ListView.SelectedItem)Got it! Thanks!
CannibalSmith