如果我将datagrid和dataform绑定到相同的ItemsSource,我假设当我在datagrid中选择不同的行时,所选的项目将显示在dataform中。
只有数据源是PagedCollectionView而不是ObservableCollection时才会出现这种情况?这是对的吗?
答案 0 :(得分:3)
ICollectionView
公开成员处理所选项目以及在项目之间移动。 ObservableCollection
只是一个通用列表,具有在更改时抛出事件的附加功能。 DataGrid依赖ICollectionView
的SelectedItem功能来了解DataGrid选择的内容。
请注意,DataGrid始终使用ICollectionView
来表示其Items。如果您提供ICollectionView
作为ItemsSource,它将使用该对象,但如果您提供任何其他IEnumerable
,它将将其包装在其自己的内部ICollectionView