我有一个有ScrollViewer的控件,在ScrollViewer中有一个Image控件,我想做的是当我的ScrollViewer到达底部(参见代码)时,我想切换到下一个Image。
private void ImageScrollViewer_ScrollChanged(object sender, System.Windows.Controls.ScrollChangedEventArgs e)
{
var scrollViewer = (ScrollViewer)sender;
if (!_hasChangedDueToScroll)
{
if (scrollViewer.VerticalOffset == scrollViewer.ScrollableHeight && scrollViewer.ScrollableHeight != 0.0)
{
if (_pageNo != _maxPageNo - 1)
{
ChangePage(_pageNo + 1);
_hasChangedDueToScroll = true;
scrollViewer.ScrollToTop();
}
}
}
}问题是,_hasChangedDueToScroll需要在那里,这样代码就不会从所有图像运行到最后一个图像,所以我想在鼠标按钮从ScrollViewer向上移动时更改_hasChangedDueToScroll,但即使我为MouseUp添加了一个事件,该事件也永远不会执行。
你知道为什么会这样吗?
谢谢
发布于 2013-11-14 14:08:15
使用PreviewMouseLeftButtonUp而不是MouseUp
https://stackoverflow.com/questions/19955245
复制相似问题