SelectedItem设置为CollectionViewSource的第一个项目

时间:2011-07-30 20:36:32

标签: windows-phone-7 listbox collectionviewsource

我有一个视图数据绑定通过mvvm light到我的WP7项目中的viewmodel。 该视图包含一个包含以下设置的列表框:

<ListBox x:Name="StationList"
    ItemsSource="{Binding StationList}"
    SelectedItem="{Binding SelectedStation, Mode=TwoWay}"
    >

StationList是一个ObservableCollection。

现在当视图加载时,一切看起来都很棒!列表显示,没有选择项目!

但是当我将XAML更改为:

<ListBox x:Name="StationList"
            ItemsSource="{Binding Source={StaticResource StationListSorted}}"
            SelectedItem="{Binding SelectedStation, Mode=TwoWay}"
            >

将StationListSorted作为CollectionViewSource在StationList上进行简单的一个属性排序。 现在事情变得丑陋! 相同的视图在列表框中加载了相同的项目,但现在已正确排序,但是选择了第一个项目并设置了selectedItem属性!!

如何使用CollectionViewSource对ListBox进行排序而不自动选择我的第一个项目?

1 个答案:

答案 0 :(得分:15)

在列表框中,尝试设置IsSynchronizedWithCurrentItem并查看哪个值(true或false)产生所需的效果。