顺利旋转Viewbox内容

时间:2010-06-13 14:54:44

标签: c# wpf rotation viewbox

我正在寻找自己更好的WPF工作方法,我通常会手动做。

在这种情况下,我有一个带有图像的ViewBox。我还有一个使用DoubleAnimation将图像向右旋转的按钮。

这个动画效果很好,但显然因为它转动时是方形的,所以图像与ViewBox“最合适”,这使得旋转看起来非常糟糕,因为它变得越来越小,因为它的最长边缩小或增长到适合那个特定的旋转角度。

我正在寻找有关使用适当的WPF方法处理此问题的最佳方法的任何建议。显然,我可以手动完成所有计算,但我更感兴趣的是找到一种方法来使用.NET体系结构中内置的控件和方法。

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

如果Image中只有ViewBox,请删除视图框。如果Stretch属性设置为Uniform,则图片已经能够正确拉伸。

在任何情况下,请使用RenderTransform而不是LayoutTransform,以避免在图像旋转时重新计算控件的位置。在完成所有位置计算后,RenderTransform将旋转对象,这样你就可以了。如果您在旋转时发现它通过某些控件,只需在图像周围添加边距。