我有一个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>
Run Code Online (Sandbox Code Playgroud)
我想在用户水平拖动DataGrid时添加一个事件,它会更新我拥有的另一个图表.有人能指出我的方向来开始这个吗?谢谢.
Fre*_*lad 16
如果我正确理解了您的问题,您想知道用户何时滚动DataGrid
水平.这可以通过附加事件来完成ScrollViewer.ScrollChanged
.
XAML
<DataGrid x:Name="dtGrid"
ScrollViewer.ScrollChanged="dtGrid_ScrollChanged"
... />
Run Code Online (Sandbox Code Playgroud)
代码背后
private void dtGrid_ScrollChanged(object sender, ScrollChangedEventArgs e)
{
if (e.HorizontalChange != 0)
{
// Do stuff..
}
}
Run Code Online (Sandbox Code Playgroud)