2010-09-15 86 views
1

我在WPF中实现自动滚动有一些问题(我想我可以这样调用它)。 我有一个放置在scrollviwer中的画布。在我的画布上,我可以动态添加不同的形状。这些形状的位置可以用鼠标改变。每次我在画布上添加新形状或更改形状的位置时,我都会触发measureOverride函数。感谢此“滚动视图”“知道”画布的实际大小并显示滚动条。但是,即使滚动条出现,视图也不会“跟随”我目前移动的形状。我的意思是,如果我到达可见的画布部分,我想画布到srcoll。 我试图用这个功能scrollviewer和画布 - 滚动视图到给定的位置

ScrollToHorizontalOffset() 

但是我有一个正确使用该功能的问题。我试图使用(作为参数)画布的实际宽度,但效果不佳。我也试图用作形状的参数当前位置(我移动),但它只能用于一种方式。如果我将这个元素移动到画布的右侧,观众就会跟随移动元素。但是,如果我将形状向后移动(向左),则视图不会跟随形状。

我希望有人会明白这一点:)这很难解释我的问题。

回答

0

我也试图为形状

的 参数当前位置即是落实正确的使用方法。你需要的是一个转换器,它将根据你移动物体的方向返回位置。