我有以下xaml。
<ScrollViewer HorizontalAlignment="Stretch" Margin="107,0,0,0" Name="scrollViewer1" VerticalAlignment="Stretch" HorizontalScrollBarVisibility="Visible">
<Image Name="image1" Stretch="None" MouseWheel="image1_MouseWheel" RenderTransformOrigin="0,0">
</Image>
</ScrollViewer>下面是下面的代码。
// initialise.
private TransformGroup group = new TransformGroup();
private ScaleTransform st = new ScaleTransform();
group.Children.Add(st);
image1.RenderTransform = group
// mouse event.
TransformGroup group = (TransformGroup)image1.RenderTransform;
ScaleTransform scale = (ScaleTransform)group.Children.Last();
double zoom = e.Delta > 0 ? .2 : -.2;
scale.ScaleX += zoom;
scale.ScaleY += zoom;如何让滚动条考虑到图像现在是不同的大小。滚动条的大小保持不变,我不知道如何更改它们。
谢谢
发布于 2010-10-14 00:56:53
您需要来自Silverlight Toolkit的LayoutTransformer。不是在你的图像上设置一个RenderTransform,而是将它放在一个LayoutTransformer中。
发布于 2010-10-13 17:48:09
您是否尝试过在滚动查看器上调用InvalidateScrollInfo?
https://stackoverflow.com/questions/3921843
复制相似问题