我有一个 View 数据通过 mvvm light 绑定(bind)到我的 WP7 项目中的 View 模型。
该 View 包含一个具有以下设置的列表框:
<ListBox x:Name="StationList"
ItemsSource="{Binding StationList}"
SelectedItem="{Binding SelectedStation, Mode=TwoWay}"
>
StationList 是一个 ObservableCollection。
现在,当 View 被加载时,一切看起来都很棒!显示列表,未选择任何项目!
但是当我将 XAML 更改为:
<ListBox x:Name="StationList"
ItemsSource="{Binding Source={StaticResource StationListSorted}}"
SelectedItem="{Binding SelectedStation, Mode=TwoWay}"
>
StationListSorted 是 StationList 上的一个简单属性排序,作为 CollectionViewSource。
现在事情变得丑陋了!!
相同的 View 在列表框中加载了相同的项目,但现在正确排序,但第一个项目被选中并设置了 selectedItem 属性!
如何在没有自动选择我的第一个项目的情况下使用 CollectionViewSource 对 ListBox 进行排序?
最佳答案
在您的列表框中,尝试设置 IsSynchronizedWithCurrentItem
并查看哪个值(真或假)产生所需的效果。
关于windows-phone-7 - SelectedItem 使用 CollectionViewSource 设置为第一个项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6885837/