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:静态资源只从资源集合中一次获取资源
wpf 中关于Image中样式Style的一点总结的更多相关文章
- CKEDITOR 4.6.X 版本 插件 弹出对话框 Dialog中 表格 Table 自定义样式Style 问题
项目开发过程中,发现CKEDITOR 插件的弹出框 内 如果跟据项目需要写表格(table tr td),表格的边框等属性会被 CKEDITOR的清除或覆盖,导致表格很难看. 问题关键: 插件弹出框d ...
- WPF教程十:如何使用Style和Behavior在WPF中规范视觉样式
在使用WPF编写客户端代码时,我们会在VM下解耦业务逻辑,而剩下与功能无关的内容比如动画.视觉效果,布局切换等等在数量和复杂性上都超过了业务代码.而如何更好的简化这些编码,WPF设计人员使用了Styl ...
- C#、WPF中如何自定义鼠标样式
需求:在C#中如何自定义鼠标样式?在这里可以分两种情况,一种是在winForm,另一种是在WPF中(注意使用的Cursor对象不一样) 解决办法如下: a.首先针对WinForm中,我们可以采用图标加 ...
- 黑马vue---17、vue中通过属性绑定绑定style行内样式
黑马vue---17.vue中通过属性绑定绑定style行内样式 一.总结 一句话总结: 如果属性名中带有短线必须加引号,比如: h1StyleObj: { color: 'red', 'font-s ...
- Html中<a>标签的样式的设置
html中<a>标签的样式的设置.. ------------------------ <html> <head> <title>这是网页选项卡的名称& ...
- 第四章 在MVC4.0中对脚本以及样式表的引用变化
原文:http://www.cnblogs.com/xdotnet/archive/2012/07/21/aspnet40_webpage20.html 一.可以直接使用“~”,而无需使用Href对象 ...
- html中滚动栏的样式
DIV滚动栏设置 (CSS)2008/09/26 03:07div 中滚动栏的控制2008年01月06日 星期日 01:181)隐藏滚动栏<body style="overflow-x ...
- WPF编程,C#中对话框自动关闭的一种方法。
原文:WPF编程,C#中对话框自动关闭的一种方法. 版权声明:我不生产代码,我只是代码的搬运工. https://blog.csdn.net/qq_43307934/article/details/8 ...
- 如何利用 jQuery 修改 css 中带有 !important 的样式属性?
使用 jQuery 修改 css 中带有 !important 的样式属性 外部样式为: div.test { width:auto !important; overflow:auto !import ...
随机推荐
- Jenkins升级、迁移、备份
1.升级 下载新版Jenkins.war文件,替换旧版本war文件,重启即可. Jenkins.war文件的位置一般为/usr/lib/jenkins/Jenkins.war. 2.迁移.备份 Jen ...
- EF的使用(DbContext对象的共用问题)
1.问题的引入 对于某一个数据库的EF操作对象,当执行某一次请求的时候,可能会多次操作数据库,也就是可能创建很多MyDbContext(继承自DbContext对象,EF上下文对象) 2.代码创建 当 ...
- Python开发【前端】:Ajax(二)
原生Ajax.JQuery.伪Ajax三种方式使用优先级 如果发送的是[普通数据] jQuery XMLHttpRequest iframe 如果发送的是[文件] iframe jQuery(Form ...
- Mirror--自增键在镜像中的影响
测试环境: OS: Windows Server 2008 R2 Enterprise SQL: SQL Server 2012 Enterprise 测试场景: 有SERVER A上数据库 DB10 ...
- Hook?
public interface IHook { /// <summary> /// 二维地图控件对象 /// </summary> ESRI.ArcGIS.Controls. ...
- jq的$(function(){})与window.onload的区别
最近一直在研究jq的源码,书写jq的代码我们通常会包裹在一个$(function(){})函数中,jq的$(function(){})也就是$(document).ready(function(){} ...
- 【转】Deep Learning(深度学习)学习笔记整理系列之(五)
9.2.Sparse Coding稀疏编码 如果我们把输出必须和输入相等的限制放松,同时利用线性代数中基的概念,即O = a1*Φ1 + a2*Φ2+….+ an*Φn, Φi是基,ai是系数,我们可 ...
- maven-eclipse 中index.html页面乱码
maven-eclipse 中index.html页面乱码: pox.xml修改: <project> -- <properties> <argLine>-Dfil ...
- vs2010中如何编写C语言程序
File->New->Project 在打开的New Project对话框中最左侧一栏中选择Visual C++下面的CLR,之后在其右侧的区域中选择CLR Empty Applicati ...
- SQL 根据条件取不同列中的值来排序
1 有时候排序比较复杂,比如:领导对工资在1000到2000元之间的员工更感兴趣,于是要求工资在这个范围内的员工排在前面,以便优先查看 对于这种要求我们可以在查询中新生成一列,用多列排序的方法处理代 ...