C# WPF中图像控制中的多图像切换
我试图在WPF中创建一个自定义图像控件,它将有3种状态C# WPF中图像控制中的多图像切换,c#,wpf,image,wpf-controls,custom-controls,C#,Wpf,Image,Wpf Controls,Custom Controls,我试图在WPF中创建一个自定义图像控件,它将有3种状态 单一静态图像 加载程序动画 多图像动画和鼠标悬停效果 此控件将显示一个图像,但在鼠标上方它将检查是否有多个图像或单个图像。因此将有两个鼠标悬停案例 单幅图像=>什么都没有发生 多个图像=>它将开始在源中的所有图像中设置动画 我们可以用触发器在鼠标上改变图像,但如果 在单幅图像的情况下,我们没有鼠标悬停在图像上 在多个图像的情况下,我们有多个图像 我所取得的成就是基本的东西,我以前没有放在这里 <Style TargetType="{x
<Style TargetType="{x:Type Image}">
<Setter Property="Source" Value="Resources\2.png" />
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<!-- Hover image -->
<Setter Property="Cursor" Value="Hand"/>
<Setter Property="Source" Value="Resources\3.png"/>
</Trigger>
</Style.Triggers>
</Style>
现在可能需要做的是添加dynanic源,但我感到困惑的是,如何添加条件触发器并根据源具有不同的行为。对于任何感兴趣的人,我通过创建BitmapImage列表并将所有图像添加到列表中来实现这一点。然后我覆盖OnMouseEnter和onmouseeve 如果列表中有多个图像,我会启动一个计时器。在计时器运行后,我用列表中的下一个图像更新了图像源 当OnMouseLeave事件发生时,我将图像源重置为列表的零索引。这是主要的图像 我使用INotifyPropertyChanged将图像源与属性绑定