我正在尝试更改 WPF 图像控件中图像的起点,我似乎无法找到一个直接的答案。
我试图让用户平移和查看比图像控件更大的图像。
这是我的应用程序屏幕截图的链接,以及我需要它做什么。
举个例子,我希望起点是 ( image.Height/2
, image.Width/2
) 而不是 (0,0)。我需要通过 C# 代码动态更改起点。
尝试将图像控件放在滚动查看器中。
<ScrollViewer
x:Name="MyScrollViewer"
VerticalScrollBarVisibility="Hidden"
HorizontalScrollBarVisibility="Hidden">
<Image .../>
</ScrollViewer>
然后您可以在代码中使用 ScrollToVerticalOffset 和 ScrollToHorizontalOffset 方法。
我知道这来得太晚了,但是我发现自己遇到了类似的问题并且ScrollViewer
对我不起作用,因为我需要管理图像上的鼠标交互事件。
相反,我的解决方案包括将 a 放在Image
里面Canvas
,然后设置(在我的情况下是数据绑定)Canvas.Left
以及Canvas.Top
上面的附加属性Image
:
<Canvas>
<Image Canvas.Left="{Binding MyOffset.X}" Canvas.Top="{Binding MyOffset.Y}" />
</Canvas>