对于每个人,我发现 WPF、TabControl 和 DataGrid 存在不同的问题。特别是如果 TabControl ItemsSource 已绑定。
我发现的问题:
- 来回切换选项卡后,DataGrid 中的选择不可见
- DataGrid 在选项卡开关上失去排序(CollectionView.GetDefaultCollection 的 SortDescriptions 在卸载时被清除)
- 如果 DataGrid 单元格具有焦点(处于编辑模式)并且您单击另一个选项卡,则可能会发生两件事:1.)绑定对象将不会被更新;2.)如果对象无效,您会收到错误 DeferRefresh not allowed during edit,或类似的东西
- 如果您使用绑定的 TabControls 和 DataTemplates 切换到另一个选项卡,DataGridComboBox 和可能的其他控件会清除它们的值。这将清除任何选择。
所以现在我的问题是:是否有任何第三方控件在这种情况下表现更好?
你也可以在这里投票http://connect.microsoft.com/VisualStudio/feedback/details/807849/databound-tabcontrol-bugs
我从微软那里得到了答案,它不会解决,因为没有足够的人有这个问题。我知道一些修复,但它们确实不干净(fe 使用反射)。也许你有一些想法?