当我在Silverlight 4中使用以下xaml时,ScrollViewer将无法识别鼠标滚轮,除非我在滚动条的拇指上单击一次,并且在转动鼠标滚轮的同时将鼠标保持在滚动条上.
<Grid x:Name="LayoutRoot" Background="White"> <ScrollViewer> <StackPanel Name="stackPanel1"> <Button Content="Button 1" Width="150" /> <Button Content="Button 2" Width="150" Margin="0,20,0" /> <Button Content="Button 3" Width="150" Margin="0,0" /> <Button Content="Button 4" Width="150" Margin="0,0" /> <Button Content="Button 5" Width="150" Margin="0,0" /> <Button Content="Button 6" Width="150" Margin="0,0" /> <Button Content="Button 7" Width="150" Margin="0,0" /> </StackPanel> </ScrollViewer> </Grid>
有没有人会体验到这个,有没有工作?
解决方法
这里的分辨率似乎是在ScrollViewer上设置了一个背景画笔.在我的情况下,我选择使用透明笔刷.它似乎与命中测试有关,因此没有刷子的控件将永远不会收到任何鼠标事件.
<ScrollViewer Background="Transparent">