c# – 向DataGrid添加滚动事件

前端之家收集整理的这篇文章主要介绍了c# – 向DataGrid添加滚动事件前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个DataGrid定义如下作为UserControl的一部分:
<DataGrid x:Name="dtGrid"  AutoGenerateColumns="False" 
            VirtualizingStackPanel.IsVirtualizing="True"                                       
            VirtualizingStackPanel.VirtualizationMode ="Standard"
              EnableColumnVirtualization="True"
              EnableRowVirtualization="True"
            ScrollViewer.IsDeferredScrollingEnabled="True"
            CanUserReorderColumns="False" CanUserResizeColumns="False" CanUserSortColumns="True"
             ItemsSource ="{Binding}" Block.TextAlignment="Center"
             AlternatingRowBackground="#F1F1F1" RowBackground="White"
              CanUserAddRows="False" CanUserDeleteRows="False" FrozenColumnCount="1"
               GridLinesVisibility="None" >
    </DataGrid>

我想在用户水平拖动DataGrid时添加一个事件,它会更新我拥有的另一个图表.有人能指出我的方向来开始这个吗?谢谢.

解决方法

如果我正确理解您的问题,您想知道用户何时水平滚动DataGrid.这可以通过附加的事件ScrollViewer.ScrollChanged来完成.

XAML

<DataGrid x:Name="dtGrid"
          ScrollViewer.ScrollChanged="dtGrid_ScrollChanged"
          ... />

代码背后

private void dtGrid_ScrollChanged(object sender,ScrollChangedEventArgs e)
{
    if (e.HorizontalChange != 0)
    {
        // Do stuff..
    }
}

猜你在找的C#相关文章