2012-01-25 56 views
1

我该如何绑定SelectedItemsListView? 我ListViewmultipleSelection属性,我使用CollectionView对其内容..绑定列表视图的SelectedItems

我听说过的附加属性,我试图用一个我发现这里实现这一点: Sync SelectedItems in a muliselect listbox with a collection in ViewModel

我可以多选通过点击行的项目,但我不能使用Shift键盘立即多选多行...此外,当我筛选我的收藏并刷新它时,我的选择全部取消后刷新..

如何我可以做到这一点,只要我CollectionView刷新,之前选择的项目在刷新后仍然被选中...?

有人也可以帮助我如何通过我的viewmodel逻辑操纵选定的项目?

回答

1

可能应该将IsSelected属性添加到ListViewItem的视图模型中。

+0

+1这是我通常做的 - 为对象添加一个IsSelected属性并将其绑定到ListViewItem风格 – Rachel

+0

这是真的WPF方式 –

+1

这怎么可能是“真正的WPF方式”?它将纯粹是为了观点的财产放入模型中?我猜如果你愿意把你的对象转换成一个自定义的ViewModel对象,那么你可以将它保存在视图模型中。但是,仍然应该仅查看的内容正在退出。 – Vaccano

0

您将不得不使用自己的代码在刷新后保留所选项目。也许在刷新之前创建一个你的集合的副本,然后再简单地检查你当前集合中的所有选中项目。

将您的selectection mode更改为您的列表框,以便Shift键可以工作。

至于操作逻辑上选定的项目,你将不得不提供更多的信息,你想要做什么。