【问题标题】:Silveright ScrollViewer with Image and ScaleTransformSilveright ScrollViewer 与 Image 和 ScaleTransform
【发布时间】:2010-10-14 00:56:53
【问题描述】:

我有以下 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;

如何让滚动条考虑到图像现在的大小不同。 滚动条的大小保持不变,我不知道如何更改它们。

谢谢

【问题讨论】:

    标签: silverlight scrollviewer


    【解决方案1】:

    您需要来自Silverlight Toolkit 的 LayoutTransformer。不要在 Image 上设置 RenderTransform,而是将其放在 LayoutTransformer 中。

    【讨论】:

      【解决方案2】:

      您是否尝试过在滚动查看器上调用InvalidateScrollInfo

      【讨论】:

      • 是的。可滚动区域仍然不正确。一旦根据我的代码缩放内容,我要么太大要么太小。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-06-14
      • 1970-01-01
      • 2011-04-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多