wpf数据网格水平滚动错误?

wpf数据网格水平滚动错误?,wpf,scrollbar,wpfdatagrid,Wpf,Scrollbar,Wpfdatagrid,我注意到,当我在WPF中设置SelectionMode=“Extended”时,水平滚动会变得非常杂乱/怪异。某些“全选”类型的按钮在网格的左上角快速出现/消失,标题和列在滚动时来回跳跃。滚动条本身在滚动时也会来回跳跃。滚动确实是一种工作,但滚动时的行为看起来确实有问题 我注意到,如果我设置了SelectionMode=“Single”,那么问题就会消失,但我想使用SelectionMode=“Extended”。这是我的datagrid的代码: <DataGrid x:Name="dat

我注意到,当我在WPF中设置
SelectionMode=“Extended”
时,水平滚动会变得非常杂乱/怪异。某些“全选”类型的按钮在网格的左上角快速出现/消失,标题和列在滚动时来回跳跃。滚动条本身在滚动时也会来回跳跃。滚动确实是一种工作,但滚动时的行为看起来确实有问题

我注意到,如果我设置了
SelectionMode=“Single”
,那么问题就会消失,但我想使用
SelectionMode=“Extended”
。这是我的datagrid的代码:

<DataGrid x:Name="dataGrid" SelectionMode="Extended" SelectionUnit="Cell" 
    HeadersVisibility="Row,Column" RowHeaderWidth="0"
    ItemsSource="{Binding ElementName=dataPager, Path=PageView}" 
    CanUserReorderColumns="False"
    CanUserAddRows="False" CanUserDeleteRows="False" CanUserResizeRows="False">


有人知道如何解决这个问题吗?提前谢谢

所以我想出了解决问题的办法。我认为是“全选”按钮导致了滚动过程中出现/消失的问题,因此我研究了是什么使该按钮出现以及如何使其不出现。原来问题出在行标题上,所以我更改了:

HeadersVisibility="Row,Column"
致:


删除标题可见性中的行部分后,“全选”按钮停止显示,并按预期进行滚动。仍然不能完全确定为什么“全选”按钮会以这种方式出现/消失…

所以我想出了解决问题的办法。我认为是“全选”按钮导致了滚动过程中出现/消失的问题,因此我研究了是什么使该按钮出现以及如何使其不出现。原来问题出在行标题上,所以我更改了:

HeadersVisibility="Row,Column"
致:


删除标题可见性中的行部分后,“全选”按钮停止显示,并按预期进行滚动。仍然不能完全确定为什么“全选”按钮会以这种方式出现/消失…

无法重现您的问题。当DataGrid中的选择发生更改时,您是否在(代码/VM中)执行某些操作?或者任何你没有提到的事情。不在代码中处理datagrid,只在viewmodel中处理数据源。如果您无法重现问题,那么它一定与datagrid/datagridcolumnheader的样式有关,尽管我没有看到任何太奇怪的地方……无法重现您的问题。当DataGrid中的选择发生更改时,您是否在(代码/VM中)执行某些操作?或者任何你没有提到的事情。不在代码中处理datagrid,只在viewmodel中处理数据源。如果您无法重现该问题,那么它一定与datagrid/datagridcolumnheader的样式有关,尽管我在这里没有看到任何太奇怪的东西……这救了我一命,谢谢。对于任何有类似问题的人,我发现,
frozencolumnscont
似乎也是部分原因。看看我的问题:这救了我,谢谢。对于任何有类似问题的人,我发现,
frozencolumnscont
似乎也是部分原因。请看我的问题: