1
我有一种情况,我想在鼠标左键按下事件时旋转WPF窗体上的控件。我试图修改我在其他地方找到的代码,但是我不太满意。WPF中的代码旋转图像的问题
这是我有:
XAML:
<Image
Name="UpArrow"
Height="50"
Width="50"
RenderOptions.BitmapScalingMode="HighQuality"
VerticalAlignment="Top"
HorizontalAlignment="Left"
Margin="10,70,0,0">
<Image.Source>
<TransformedBitmap Source="C:\Some Source File.jpg" >
<TransformedBitmap.Transform>
<RotateTransform Angle="180"/>
</TransformedBitmap.Transform>
</TransformedBitmap>
</Image.Source>
</Image>
而且在后面的我的代码:
Private Sub UpArrow_MouseLeftButtonDown(ByVal sender As System.Object, ByVal e As System.Windows.Input.MouseButtonEventArgs) Handles UpArrow.MouseLeftButtonDown
Dim TransBitmap As TransformedBitmap = Me.UpArrow.Source
Dim Trans As RotateTransform = TransBitmap.Transform
Dim anim As New Animation.DoubleAnimation(0, New Duration(TimeSpan.FromSeconds(1)))
Trans.BeginAnimation(RotateTransform.AngleProperty, anim)
End Sub
我不断尝试一些不同的东西,但似乎没有任何工作。我可以很好地阅读C#代码,因此,如果您可以很轻松地回复它,那就去做吧,我们只是在这里使用VB。我也完全可以在XAML中完成这一切,但我似乎也无法使其工作。
谢谢!
我正要后,我想通了这一点,或者更准确发现它可以使用'RenderTransform'工作。尽管知道它为什么不能与'TransformedBitmap'一起工作是很好的。我现在已经在XAML中实现了这一切。效果很好。感谢您的信息。 – MattB 2014-08-29 23:49:48