问题描述
我有一个数据网格,该数据网格从List >接收其绑定,该绑定工作良好,并且显示了所有数据。
由于某种原因,当单击标题进行排序或滚动滚轮时,所有数据突然消失。
这是一些代码:
XAML中的网格:
<Window.Resources>
<CollectionViewSource x:Key="ItemCollectionViewSource" CollectionViewType="ListCollectionView"/>
</Window.Resources>
<DataGrid x:Name="DataGrid" ItemsSource="{Binding}" AutoGenerateColumns="False" DataContext="{StaticResource ItemCollectionViewSource}" AlternatingRowBackground="LightGray" Grid.Column="1" Grid.Row="1" Height ="auto" Width="auto" FontSize="10" FontWeight="SemiBold" FontFamily="Segoe UI" Margin="5" BorderThickness="0" Background="AliceBlue" IsReadOnly="True" VerticalScrollBarVisibility="Auto">
数据绑定:
CollectionViewSource itemCollectionViewSource;
itemCollectionViewSource = (CollectionViewSource)(FindResource("ItemCollectionViewSource"));
itemCollectionViewSource.Source = GetterSetter.CMinfo;
更新:我设法解决了滚轮问题:需要将EnableRowVirtualization设置为“ False”
解决方法
所以我想出了我的问题, 我的数据网格显示在新窗口上,并且在窗口启动后,我从要采购的列表中清除了数据(以便在进行新搜索时没有重复的行),而不是在方法开始时这样做。
它使我的网格从一个空的列表中进行采购(即使它在新窗口中显示良好)。
我只是将Clear()方法移到该方法的开头,现在一切正常。