这个动画绕x轴旋转加上位置偏移
参考代码:
public MainPage() { InitializeComponent(); button2.Visibility = Visibility.Collapsed; } int n = -512; private void button1_Click(object sender,RoutedEventArgs e) { button2.Projection = new PlaneProjection { RotationX=n<0?270:0 }; button2.Visibility = Visibility.Visible; if (n < 0) button2.Margin = new Thickness(512,button2.Margin.Top,0); else button2.Margin = new Thickness(0,0); var st = new Storyboard(); st.Completed += (a,b) => { if (n < 0) button2.Visibility = Visibility.Collapsed; }; var a1 = new DoubleAnimation { To=n<0?0:-270,Duration=TimeSpan.FromSeconds(0.75),AutoReverse=false }; Storyboard.SetTarget(a1,button2.Projection); Storyboard.SetTargetProperty(a1,new PropertyPath("RotationX")); st.Children.Add(a1); var a2 = new DoubleAnimation { To = n,Duration = TimeSpan.FromSeconds(0.75),AutoReverse = false }; Storyboard.SetTarget(a2,button2.Projection); Storyboard.SetTargetProperty(a2,new PropertyPath("LocalOffsetX")); st.Children.Add(a2); st.Begin(); n *= -1; }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。