【问题标题】:Scaling in scrollviewer from code从代码中缩放滚动查看器
【发布时间】:2013-06-27 13:39:53
【问题描述】:

我在滚动查看器中有一个大图像,所以现在我需要缩放图像以在全屏上查看该图像的一部分。我需要从我的代码中做到这一点。该怎么做?

【问题讨论】:

  • 它是 WPF 或 WinRT-XAML。除非您询问所有 XAML UI 平台的基本内容,否则不能两者兼而有之。我假设您正在询问有关 winrt-xaml 的问题,因为这是一个常见的误解,它是 WPF 的一些新版本。更重要的是它是针对 Windows 8.0 还是 Windows 8.1,因为这两者的答案可能不同。

标签: windows-runtime windows-store-apps winrt-xaml


【解决方案1】:

在 Windows 8.0 中,您可以在 ScrollViewer 上设置 ZoomFactor 属性以缩放其内容。

在 Windows 8.1 中,ScrollViewer 有一个 ChangeView() 方法,该方法接受缩放系数以及水平和垂直偏移的参数,并支持视图更改动画。

要让它填满你的屏幕,你可以比较 ScrollViewerActualWidthActualHeight 属性及其内容,并将缩放系数设置为结果。

【讨论】:

  • ChangeView 正是我所需要的... Windows 8.0 有什么解决方案吗?我知道可以使用 HorisontalOffset/VerticalOffset 和 ZoomFactor,但我不知道如何...
  • 正如我所说 - sv.ZoomFactor = Math.Max(sv.ActualWidth / content.ActualWidth, sv.ActualHeight / content.ActualHeight);
  • 你确定在 w8 属性 ScrollViewer.ZoomFactor 中有一个设置器吗?我认为我们不能设置任何值 - docs 也许我们应该使用 ZoomToFactor
  • 是的,我就是这个意思。
猜你喜欢
  • 2010-11-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-10-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-04-01
相关资源
最近更新 更多