在C#(WPF)中创建加载弧
我正在开发一款使用悬停按钮的Kinect应用程序,当用户将鼠标悬停在按钮上时,会出现一个加载圆圈并填充。我当前的实现是纯C语言,并绘制到画布上 圆弧的创建方式如下:在C#(WPF)中创建加载弧,c#,wpf,kinect,C#,Wpf,Kinect,我正在开发一款使用悬停按钮的Kinect应用程序,当用户将鼠标悬停在按钮上时,会出现一个加载圆圈并填充。我当前的实现是纯C语言,并绘制到画布上 圆弧的创建方式如下: this.loadArc = new Arc(); this.loadArc.StartAngle = 0; this.loadArc.Width = 150; this.loadArc.Height = 150; this.loadArc.ArcThickness = 5; this.loadArc.ClipToBounds =
this.loadArc = new Arc();
this.loadArc.StartAngle = 0;
this.loadArc.Width = 150;
this.loadArc.Height = 150;
this.loadArc.ArcThickness = 5;
this.loadArc.ClipToBounds = true;
this.loadArc.Fill = new SolidColorBrush(Colors.White);
canvas.Children.Add(this.loadArc);
然后计时器启动,弧线填充如下:
this.loadArc.EndAngle += x;
其中x是由经过的时间和悬停所需的总时间确定的角度
这很好,但看起来弧线试图填充可用空间,形状有点跳跃。我希望这会显示弧慢慢填充以创建一个圆。我有没有遗漏一些琐碎的东西?或者,更好的是,有没有更有效的方法来实现这一点(除了gif或类似文件)
提前谢谢 可以使用wpf动画。它们需要时间来完成,并且在完成时会有事件发生(请参阅)。谢谢,之所以在C#中完成,是因为角度会根据按钮而变化。我用故事板做叠加。但是,问题仍然与故事板中角度的变化相同。一旦角度超过180度,它看起来很好,但是较小的角度都很不舒服。我用代码创建了一个故事板,加上降低帧率,效果很好,但是对于较小的角度,填充角度看起来仍然很奇怪。