具有当前项目的可观察集合?

djc*_*uch 1 c# wpf observablecollection

在我的应用程序的对话框中,我有一个绑定到选项卡列表的可观察集合(存储在其他地方)。当我关闭并重新打开对话框时,当前选定的选项卡会丢失并最终成为第一个选项卡。如何设置选项卡以便保留所选选项卡?

我的印象是可观察集合具有“当前项目”属性,但事实似乎并非如此。我查看了 ItemCollection 和 CollectionView,它们确实具有当前项目属性,但我不确定这是否是我感兴趣的。

小智 5

这是一个老问题,但我会回答那些可能正在寻找这个的人......

我使用 MVVM 模式处理此问题的方法是在我的 ViewModel 上同时拥有 TabControl 绑定其 ItemsSource 的 ObservableCollection 以及 TabControl 绑定其 SelectedItem 属性的 ActiveItem 属性。

它工作得很好并且保留了 MVVM 的设计原则(即 ViewModel 不应该知道视图)。