当孩子滚动到视图中并指示实现了哪个孩子时,是否会引发事件?
当然有 ScrollChanged 事件,但它没有为我提供任何关于滚动到视图中的元素的指示。
编辑 :
我尝试连接到 ScrollViewer 的 RequestBringIntoView 事件,但从未达到。或者,我也在包含以下项目的 StackPanel 上尝试了相同的操作:
XAML :
<ScrollViewer RequestBringIntoView="ScrollViewer_RequestBringIntoView" >
<StackPanel RequestBringIntoView="StackPanel_RequestBringIntoView">
<Button Content="1" Height="20"/>
<Button Content="2" Height="20"/>
<Button Content="3" Height="20"/>
<Button Content="4" Height="20"/>
<Button Content="5" Height="20"/>
<Button Content="6" Height="20"/>
<Button Content="7" Height="20"/>
<Button Content="8" Height="20"/>
<Button Content="9" Height="20"/>
<Button Content="10" Height="20"/>
<Button Content="11" Height="20"/>
<Button Content="12" Height="20"/>
<Button Content="13" Height="20"/>
<Button Content="14" Height="20"/>
<Button Content="15" Height="20"/>
<Button Content="16" Height="20"/>
<Button Content="17" Height="20"/>
<Button Content="18" Height="20"/>
<Button Content="19" Height="20"/>
<Button Content="20" Height="20"/>
<Button Content="21" Height="20"/>
<Button Content="22" Height="20"/>
<Button Content="23" Height="20"/>
<Button Content="24" Height="20"/>
</StackPanel>
</ScrollViewer>
他们永远无法到达。据我了解,ScrollViewer 在其封装的子元素上调用 BringIntoView,它们引发 RequestBringIntoView 事件,我希望它会向上传播可视化树。我猜 ScrollViewer 在内部处理该事件。所以我最终遇到了同样的问题,即当它的孩子出现时如何得到通知。我可以将它们每个都连接起来,或者 ItemsControl 会为我做这件事吗?