相关疑难解决方法(0)

枚举上的datatrigger来改变图像

我有一个带有固定背景图像的按钮,并希望在它上面显示一个小的叠加图像.要选择哪个叠加图像取决于LapCounterPingStatus相应视图模型的依赖项属性().

这是我到目前为止所得到的:

<Button>
    <Grid>
        <Image Stretch="None"> <!-- Background Image -->
            <Image.Style>
                <Style TargetType="{x:Type Image}">
                    <Setter Property="Source" Value="/Images/Pingn.png"/>
                </Style>
            </Image.Style>
        </Image>
        <Image Stretch="None" Panel.ZIndex="1"> <!-- Small Overlay Image -->
            <Image.Style>
                <Style TargetType="{x:Type Image}">
                    <Style.Triggers>
                        <DataTrigger Binding="{Binding Path=LapCounterPingStatus}" Value="PingStatus.PING_UNKNOWN">
                            <Setter Property="Source" Value="/Images/RefreshOverlayn.png"/>
                        </DataTrigger>
                        <DataTrigger Binding="{Binding Path=LapCounterPingStatus}" Value="PingStatus.PING_FAILURE">
                            <Setter Property="Source" Value="/Images/ErrorOverlayn.png"/>
                        </DataTrigger>
                        <DataTrigger Binding="{Binding Path=LapCounterPingStatus}" Value="PingStatus.PING_SUCCESS">
                            <Setter Property="Source" Value="/Images/CheckmarkOverlayn.png"/>
                        </DataTrigger>
                    </Style.Triggers>
                </Style>
            </Image.Style>
        </Image>
    </Grid>
</Button>
Run Code Online (Sandbox Code Playgroud)

我的viewmodel的相关部分

public class ConfigurationViewModel
{
   public enum PingStatus { PING_UNKNOWN, PING_SUCCESS, PING_FAILURE };

   public PingStatus …
Run Code Online (Sandbox Code Playgroud)

c# wpf

91
推荐指数
2
解决办法
5万
查看次数

标签 统计

c# ×1

wpf ×1