C# WPF绑定到RotateTransform.Angle不起作用
我正在尝试制作一个简单的应用程序,在这个程序中,我在屏幕上弹起一个图像并旋转它。我希望旋转速度是动态的,并且每当图像击中包含窗口的一侧时都会发生变化。所以,我试图找出如何动态地改变旋转的速度,甚至是方向。我正在尝试传递速度值,并通过动画动态更改旋转 无论如何,我只是尝试通过设置Angle属性的动画并绑定到XAML中的角度来测试动态更改旋转的能力。我一定是做错了什么,因为图像不会旋转 在此方面的任何帮助都将不胜感激 谢谢, 柯蒂斯 这是我的XAML:C# WPF绑定到RotateTransform.Angle不起作用,c#,wpf,xaml,rotatetransform,rendertransform,C#,Wpf,Xaml,Rotatetransform,Rendertransform,我正在尝试制作一个简单的应用程序,在这个程序中,我在屏幕上弹起一个图像并旋转它。我希望旋转速度是动态的,并且每当图像击中包含窗口的一侧时都会发生变化。所以,我试图找出如何动态地改变旋转的速度,甚至是方向。我正在尝试传递速度值,并通过动画动态更改旋转 无论如何,我只是尝试通过设置Angle属性的动画并绑定到XAML中的角度来测试动态更改旋转的能力。我一定是做错了什么,因为图像不会旋转 在此方面的任何帮助都将不胜感激 谢谢, 柯蒂斯 这是我的XAML: <UserControl x:Class
<UserControl x:Class="Scooter.Bug"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
mc:Ignorable="d"
DataContext="{Binding RelativeSource={RelativeSource Self}}"
Loaded="Bug_OnLoaded"
d:DesignHeight="300" d:DesignWidth="300">
<Grid>
<Image x:Name="_image" Source="Images/Author.png" RenderTransformOrigin="0.5, 0.5">
<Image.RenderTransform>
<RotateTransform Angle="{Binding Angle}"/>
</Image.RenderTransform>
</Image>
</Grid>
</UserControl>
您正在图像上调用
BeginAnimation()
,但使用angelproperty
来自Bug
您可以在RotateTransform
_image.RenderTransform.BeginAnimation(RotateTransform.AngleProperty, animation);
或者在控件上调用BeginAnimation()
:
this.BeginAnimation(AngleProperty, animation);
极好的!!那是我的错误。我只需要把它称为。BeginAnimation(..),而不是在_图像上称之为。谢谢
this.BeginAnimation(AngleProperty, animation);