使用 CollectionViewSource 将 SelectedItem 设置为第一项
我有一个视图数据通过 mvvm light 绑定到我的 WP7 项目中的视图模型。 该视图包含一个具有以下设置的列表框:
<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 是 StationList 上的一个简单属性排序作为 CollectionViewSource 时。 现在事情变得丑陋了! 相同的视图在列表框中加载了相同的项目,但现在已正确排序,但选择了第一个项目并设置了 selectedItem 属性!
如何使用 CollectionViewSource 对 ListBox 进行排序而不自动选择我的第一个项目?
I have a view databound through mvvm light to a viewmodel in my WP7 project.
The view contains a Listbox with following settings:
<ListBox x:Name="StationList"
ItemsSource="{Binding StationList}"
SelectedItem="{Binding SelectedStation, Mode=TwoWay}"
>
The StationList is a ObservableCollection.
Now when the view gets loaded, everything looks great! The list is shown and NO item is selected!
But when I change the XAML to:
<ListBox x:Name="StationList"
ItemsSource="{Binding Source={StaticResource StationListSorted}}"
SelectedItem="{Binding SelectedStation, Mode=TwoWay}"
>
With the StationListSorted being a simple one property sort on the StationList as a CollectionViewSource.
Now things turn ugly!!
The same view is loaded with the same items in the listbox, but now correctly sorted, BUT the first item is selected and the selectedItem property is set!!
How can I sort a ListBox with a CollectionViewSource WITHOUT it auto selecting my first item?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
在列表框中,尝试设置
IsSynchronizedWithCurrentItem
并查看哪个值(true 或 false)产生所需的效果。On your listbox, try setting
IsSynchronizedWithCurrentItem
and see which value (either true or false) produces the desired effect.