我会尽量做空。所以,在XAML中:
<Grid Height="100" Width="100" ClipToBounds="True">
<Image Width="100" Height="200" Name="image" Stretch="None" Source="/Test;component image.png" SnapsToDevicePixels="True">
<Image.RenderTransform>
<TranslateTransform x:Name="transform" X="0" Y="0"/>
</Image.RenderTransform>
</Image>
</Grid>
如果现在我们使用代码中的变换来更改图像位置:
transform.Y -= 50;
,图像向上移动50像素,但切割为100像素。
为什么我们看不到图像的整个部分(从50到150)?