我正在尝试为我的WPF应用程序构建一个交互式背景。如下面的截图所示,它由分散在背景中的独立矩形组成,我希望它们能够单独地淡入淡出。
我根据用户机器的虚拟屏幕大小(例如我的是3200x1200)计算所需的矩形数量。这样,最大化和最小化窗口将显示更多的背景。如上所述,对于我的分辨率,我将需要3220个矩形。
我现在的实现方式是将所有矩形添加到带有随机生成的alpha值的画布上。然后我延迟开始一个自动循环动画(见下文)。不幸的是,这导致我的应用程序非常缓慢(理所当然)。有没有办法实现这种类型的效果并获得更好的性能?
我根据用户机器的虚拟屏幕大小(例如我的是3200x1200)计算所需的矩形数量。这样,最大化和最小化窗口将显示更多的背景。如上所述,对于我的分辨率,我将需要3220个矩形。
我现在的实现方式是将所有矩形添加到带有随机生成的alpha值的画布上。然后我延迟开始一个自动循环动画(见下文)。不幸的是,这导致我的应用程序非常缓慢(理所当然)。有没有办法实现这种类型的效果并获得更好的性能?
<Storyboard x:Key="uiStoryboardTile" AutoReverse="True" RepeatBehavior="Forever">
<ColorAnimationUsingKeyFrames
Storyboard.TargetProperty="(Shape.Fill).(SolidColorBrush.Color)">
<EasingColorKeyFrame KeyTime="0:0:2" Value="Transparent"/>
</ColorAnimationUsingKeyFrames>
</Storyboard>
ObjectAnimationUsingKeyFrames
来对Brushes
进行动画处理? - Justin XL