• wpf 中关于Image中样式Style的一点总结


     第一种写法:

    (1):定义样式

     <Style x:Key="imgStyle" TargetType="Image">  : <!-- TargetType="Image":表示当前的样式作用到Image对象上-->
                            <Setter Property="Source" Value="{StaticResource ResourceKey=RedLamp_Inactive}"/>
                            <Style.Triggers>
                                <Trigger Property="IsMouseOver" Value="True">
                                    <Setter Property="Source" Value="{StaticResource ResourceKey=RedLamp_Active}"/>
                                </Trigger>
                                <DataTrigger Binding="{Binding Path=IsPendingAlarmChecked}" Value="True">
                                    <Setter Property="Source" Value="{StaticResource ResourceKey=RedLamp_Active}"/>
                                </DataTrigger>
                            </Style.Triggers>
    </Style>

    2:引用样式

    <Image x:Name="img_Red" Margin="20,0,0,0"  HorizontalAlignment="Left" VerticalAlignment="Center" Stretch="None" ToolTip="未处理" Style={ StaticResource  ResourceKey=imgStyle}/>

    第二种写法:

    <Image x:Name="img_Red" Margin="20,0,0,0"  HorizontalAlignment="Left" VerticalAlignment="Center" Stretch="None" ToolTip="未处理" Cursor="Hand">
                    <Image.Style>
                        <Style TargetType="Image">
                            <Setter Property="Source" Value="{StaticResource ResourceKey=RedLamp_Inactive}"/>
                            <Style.Triggers>
                                <Trigger Property="IsMouseOver" Value="True">
                                    <Setter Property="Source" Value="{StaticResource ResourceKey=RedLamp_Active}"/>
                                </Trigger>
                                <DataTrigger Binding="{Binding Path=IsPendingAlarmChecked}" Value="True">
                                    <Setter Property="Source" Value="{StaticResource ResourceKey=RedLamp_Active}"/>
                                </DataTrigger>
                            </Style.Triggers>
                        </Style>
                    </Image.Style>
    </Image>

    说明如下:

    Source的属性值应该为“ImageSource 或 ImageSource的派生子类的实例”

    即Value = 应该为“ImageSource 或 ImageSource的派生子类的实例”

    Value="{StaticResource ResourceKey=RedLamp_Active}":把由“RedLamp_Active”关键字所代表的“BitmapImage”实例赋值给Value


    <Setter Property="Source" Value="{StaticResource ResourceKey=RedLamp_Active}"/>

    Setter:设置器
    Property:用来指定“某一个”属性
    Value:用来设置“某个”属性的值

    {StaticResource ResourceKey=RedLamp_Inactive} : 这个整体表示一个key是“RedLamp_Inactive”的静态资源,在这里,该静态资源是一个BitMapImage实例(该实例可能来自本页面的“Resources”,也可能来自外部的“资源字典”


    StaticResource:静态资源只从资源集合中一次获取资源

  • 相关阅读:
    [Abp vNext微服务实践]
    [Abp vNext微服务实践]
    开源项目
    ORA-28002: x天之后口令将过期
    Linux压缩和解压
    cortex-m3内核的芯片截图,以及内核学习
    lpc1768的时钟树梳理和小结
    lp17xx的iap的向量表区别
    关于core_cm3.c和core_cm3.h,Core_cmFunc.h 和 Core_cmInstr.h的理解
    Python从json中提取数据
  • 原文地址:https://www.cnblogs.com/changbaishan/p/3487825.html
Copyright © 2020-2023  润新知