C# WPF 将动画 gif 设置为背景
C# WPF Set animated gif as background
我在一个 WPF 项目中遇到了 XAML 的问题,我想要一个 gif 动画作为整个程序的背景 window。
我使用了一个名为 WpfAnimatedGif 的外部库,据我所知,它必须在图像元素中才能工作。我面临的问题是我无法将图像元素设置为 window.
的背景
我使用 ImageBrush 元素将其设置为背景,如下所示:
<Grid.Background>
<ImageBrush ImageSource="Resources/animated.gif"/>
</Grid.Background>
这个解决方案的问题是 gif 没有动画,所以它只是一个静态图像。为了使 gif 动画化,我让它与外部库一起工作,如下所示:
<Border>
<Image gif:ImageBehavior.AnimatedSource="Resources\animated.gif"
gif:ImageBehavior.AutoStart="True"
gif:ImageBehavior.RepeatBehavior="1"/>
</Border>
由于我对 XAML 的了解有限,我不知道如何像第一个示例那样设置动画 gif 以很好地适应程序背景 window。
有什么简单的解决方法吗?
带有图像的 VisualBrush 可能有效:
<Grid.Background>
<VisualBrush>
<VisualBrush.Visual>
<Image gif:ImageBehavior.AnimatedSource="Resources\animated.gif"
gif:ImageBehavior.AutoStart="True"
gif:ImageBehavior.RepeatBehavior="1"/>
</VisualBrush.Visual>
</VisualBrush>
</Grid.Background>
我在一个 WPF 项目中遇到了 XAML 的问题,我想要一个 gif 动画作为整个程序的背景 window。
我使用了一个名为 WpfAnimatedGif 的外部库,据我所知,它必须在图像元素中才能工作。我面临的问题是我无法将图像元素设置为 window.
的背景我使用 ImageBrush 元素将其设置为背景,如下所示:
<Grid.Background>
<ImageBrush ImageSource="Resources/animated.gif"/>
</Grid.Background>
这个解决方案的问题是 gif 没有动画,所以它只是一个静态图像。为了使 gif 动画化,我让它与外部库一起工作,如下所示:
<Border>
<Image gif:ImageBehavior.AnimatedSource="Resources\animated.gif"
gif:ImageBehavior.AutoStart="True"
gif:ImageBehavior.RepeatBehavior="1"/>
</Border>
由于我对 XAML 的了解有限,我不知道如何像第一个示例那样设置动画 gif 以很好地适应程序背景 window。
有什么简单的解决方法吗?
带有图像的 VisualBrush 可能有效:
<Grid.Background>
<VisualBrush>
<VisualBrush.Visual>
<Image gif:ImageBehavior.AnimatedSource="Resources\animated.gif"
gif:ImageBehavior.AutoStart="True"
gif:ImageBehavior.RepeatBehavior="1"/>
</VisualBrush.Visual>
</VisualBrush>
</Grid.Background>