我们有一个 MVVM (Cinch) 解决方案,其中有一个带有 TabControl 的窗口。 ItemsSource 绑定(bind)到 CollectionView(从 ObservableCollection 生成的 DefaultView),IsSynchronizedWithCurrentItem=true。第一次加载 Window 时一切正常...选项卡显示正确,用户可以在它们之间切换。
当窗口被隐藏并再次显示时会出现问题。无论 CollectionView 中的 CurrentItem 是什么,始终会再次选择第一个选项卡。 .Show 之前的行有 CurrentItem 作为我们想要的选项卡,但是选项卡在 .Show 操作期间切换。
有没有其他人遇到过这个问题?
最佳答案
这绝对是一个黑客。但是您可以覆盖 Activated 事件并在它被重置之前存储选项卡索引,并在它重新激活时再次设置它。
protected override void OnActivated(EventArgs e)
{
int tabControlIndex = myTabController.SelectedIndex;
base.OnActivated(e);
myTabController.SelectedIndex = tabControlIndex ;
}
关于wpf - TabControl 在 Window.Show 上丢失选定的选项卡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9120102/