c# – 使用带偏移的RotateTransform问题旋转图像

这是我的XAML:

<Image 
                VerticalAlignment="Center" HorizontalAlignment="Center" 
                Source="{Binding Input, Converter={StaticResource ByteArrayToBitmapConverter}}">
                <Image.RenderTransform>
                    <RotateTransform Angle="{Binding RotateAngle}" CenterX="100" CenterY="100"></RotateTransform>
                </Image.RenderTransform>

            </Image>

我将图像绑定到数据源并使用转换器来获取Bitmap.那部分有效.但是,我想让它旋转,我在我的VM中设置RotateAngle.问题是 – 所有图像都有不同的尺寸,我不知道如何设置CenterX和CenterY.有没有其他方法可以在不计算额外的X和Y的情况下改变方向?

解决方法:

没有时间自己测试,但我认为RenderTransformOrigin可能适合你.


<Image VerticalAlignment="Center" HorizontalAlignment="Center"
Source="{Binding Input, Converter={StaticResource ByteArrayToBitmapConverter}}" RenderTransformOrigin="0.5,0.5">
<Image.RenderTransform> <RotateTransform Angle="{Binding RotateAngle}" > </RotateTransform> </Image.RenderTransform> </Image> </code></pre>

相关文章

如何在Silverlight4(XAML)中绑定IsEnabled属性?我试过简单的...
我正在编写我的第一个vb.net应用程序(但我也会在这里标记c#,...
ProcessFile()是在UIThread上运行还是在单独的线程上运行.如...
我从同行那里听说,对sharepoint的了解对职业生涯有益.我们不...
我正在尝试保存一个类我的类对象的集合.我收到一个错误说明:...
我需要根据Silverlight中的某些配置值设置给定控件的Style.我...