我有ICollectionView
的{{1}},
ObservableCollection
我的 WorkingSpreadOrderCollevtionView = CollectionViewSource.GetDefaultView(SpreadOrderCollection);
不为空,可以看出SpreadOrderCollection
计数为1
但为什么SourceCollection
为CurrentPosition
,我认为正因为如此,即使我将-1
绑定到DataGrid
,WorkingSpreadOrderCollevtionView
也没有显示任何内容}。
我可以知道这里有什么可能的错误吗?
=============================================== ===========
修改:ItemSourcce
xaml
如下所示,binding
非常肯定是正确的,因为同一DataContext
中的另一个public
属性是绑定正确地使用ViewModel
。
xaml
此外,我可以在数据网格中看到<DataGrid ItemsSource="{Binding WorkingSpreadOrderCollevtionView}" CanUserAddRows="False" AutoGenerateColumns="True" >
</DataGrid>
自动生成,但我无法看到记录。
=============================================== ===
更新:我发现了这个愚蠢的错误。我已经两次调用Columns
并且认为创建了两个不同的视图副本,因此在“两个”副本上应用了两个过滤器。第二个过滤器阻止记录显示在GetDefaultView
中。我现在所做的是创建一个新视图,如下所示,
DataGrid
答案 0 :(得分:2)
CurrentPosition
通常表示所选记录。
Selector
个后代可以将SelectedItem
/ SelectedItemIndex
与ICollectionView.CurrentItem
/ CurrentPosition
同步。
-1值只表示选择器/集合视图中没有选定的项目。
这与空DataGrid
的问题无关。