WPF样式和资源2
<Window.Resources>
<FontFamily x:key="ButtonFontFamily">Time New Roman</FontFamily>
<sys:Double x:key="ButtonFontSize">18</s:Double>
<FontWeight x:key="ButtonFontWeight">Bold</FontWeight>
</Window.Resources>
1:资源里定义了三个资源,分别设置对象属性
接下来应用资源:
<Button FontFamily="{StaticResource ButtonFontFamily}"
FontWeight=="{StaticResource ButtonFontWeight}"
FontSize=="{StaticResource ButtonFontSize}"
</Button>
2:另一种方式:(WPF中的一个元素都可以使用一个样式,只能使用一个样式)
创建一个独立的资源:
<Window.Resources>
<Style x:key="BigFontButtonStyle">
<setter Property="control.FontFamily" Value="Tinmes New Roman"/>
<Setter Property="control.FontSize" Value="18"/>
<Setter Property="control.FontWeight" Value="Bold"/>
</Style>
</Window.Resources>
应用这个独立的样式资源
<Button Sytle="{StaticResource BigFontButtonStyle}">a Customized</Button>
Style类的属性:
Setters:设置属性值并自动关联事件处理程序的Sette对象或EventSetter对象的集合
Triggers:能够自动改变样式设置的对象集合
Resources
BasedOn:通过该属性可以创建继承其他样式设置的更复杂样式
TargetType:该属性表示应用样式的元素的类型
3:关联的事件处理程序
<Style x:key="MouseOverHighLightStyle">
<EventSetter Event="TextBlock.MouseEnter" Handler="element_MouseEnter"/>
<EventSetter Event=="TextBlock.MouseLeave" Handler="element_MouseLeave"/>
<Setter Property=TextBlock.Padding" Value="5"/>
</Style>
private void element_MouseEnter(object sender,MouseEventArgs e)
{ ((TextBlock)Senter.Background=new SolidColorBrush(Colors.LightGoldenrodYellow); }
事件element_MouseLeave同样的道理
接下来应用给样式;
<Textklock Style="{StaticResouce MouseOverHightStyle}"> Hover Over me</Textklock >
4:简单触发器
<Style x:key="BigFontButton">
<Style.Setters>
<Setter Property="Control.FontFamily" Value="Time NEw Roman"/>
<Setter Property="Control.FontSize" Value="18"/>
</Style.Setters> <Style.Triggers>
<Triggers Property="Control.IsFocused" Value="True">
<Setter Property="Control.Foreground" Value="darkRed"/>
</Style.Triggers>
</Style>
也可以定义多个触发器
5:比较复杂的,这里用到了”行为“:
<Style x:Key="OuterGlowStyle" TargetType="{x:Type FrameworkElement}">
<Style.Triggers>
<Trigger Property="IsFocused" Value="True">
<Setter Property="Effect">
<Setter.Value>
<DropShadowEffect BlurRadius="10" Color="Black" Direction="0" Opacity="0.6"
RenderingBias="Performance" ShadowDepth="0"/>
</Setter.Value>
</Setter>
</Trigger>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Effect">
<Setter.Value>
<DropShadowEffect BlurRadius="10" Color="Black" Direction="0" Opacity="0.6"
RenderingBias="Performance" ShadowDepth="0"/>
</Setter.Value>
</Setter>
</Trigger>
</Style.Triggers>
</Style>
6:RelativeSource相对路径
StaticSource绝对路径
ElementSource通常绑定某个控件的Value
WPF样式和资源2的更多相关文章
- Bootstrap WPF Style,Bootstrap风格的WPF样式
简介 GitHub地址:https://github.com/ptddqr/bootstrap-wpf-style 此样式基于bootstrap-3.3.0,样式文件里的源码行数都是指的这个版本.CS ...
- WPF 样式和行为
样式(style):组织和重用格式化选项的重要工具,将细节如边距.字体.字号等信息封装起来,然后再需要的地方通过属性来应用样式. 行为(behavior):封装一些通用的UI行为,如拖动,缩放元素的代 ...
- WPF学习之资源-Resources
WPF学习之资源-Resources WPF通过资源来保存一些可以被重复利用的样式,对象定义以及一些传统的资源如二进制数据,图片等等,而在其支持上也更能体现出这些资源定义的优越性.比如通过Resour ...
- WPF中的资源简介、DynamicResource与StaticResource的区别(转)
什么叫WPF的资源(Resource)?资源是保存在可执行文件中的一种不可执行数据.在WPF的资源中,几乎可以包含图像.字符串等所有的任意CLR对象,只要对象有一个默认的构造函数和独立的属性. 也就是 ...
- C#工具:Bootstrap WPF Style,Bootstrap风格的WPF样式
简介 GitHub地址:https://github.com/ptddqr/bootstrap-wpf-style 此样式基于bootstrap-3.3.0,样式文件里的源码行数都是指的这个版本.CS ...
- WPF样式(Style)入门
原文:WPF样式(Style)入门 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/qq_34802416/article/details/78231 ...
- WPF - 样式 (转)
本文目录 1.引言 2.怎样使用样式? 3.内联样式 4.已命名样式 5.元素类型样式 6.编程控制样式 7.触发器 1.引言 样式(Style),主要是用来让元素或内容呈现一定外观的属性.WPF中的 ...
- WPF样式学习三
SnapsToDevicePixels 获取或设置在呈现过程,该值来确定呈现此元素是否应使用特定于设备的像素设置. 这是一个依赖项属性. true ,如果元素应以符合呈现到设备像素;否则, false ...
- 《深入浅出WPF》笔记——资源篇
原文:<深入浅出WPF>笔记--资源篇 前面的记录有的地方已经用到了资源,本文就来详细的记录一下WPF中的资源.我们平时的“资源”一词是指“资财之源”,是创造人类社会财富的源泉.在计算机程 ...
随机推荐
- 单点登录CAS使用记(二):部署CAS服务器以及客户端
CAS-Server下载地址:https://www.apereo.org/projects/cas/download-cas CAS-Client下载地址:http://developer.jasi ...
- Y - Design T-Shirt(第二季水)
Description Soon after he decided to design a T-shirt for our Algorithm Board on Free-City BBS, XKA ...
- intent.setFlags方法中参数值的含义
intent.setFlags()方法中参数的含义 1.FLAG_ACTIVITY_NEW_TASK: 例如现在栈一的情况是:A B C(C位于栈顶),C通过intent跳转到D,并且这个I ...
- 百度文本编辑器 Ueditor for net 使用七牛存储附件的实现
百度编辑器功能强大,确实好用,可惜附件使用本地存储,如果网站的用户量巨大,则会使得网站目录变得非常庞大,而且文件不易于管理,七牛云存储在附件存储方面下了不少功夫,用起来感觉不错,要是将ueditor ...
- 在线支付接口之PHP支付宝接口开发简单介绍
php100:92:在线支付接口之PHP支付宝接口开发 支付接口一般是第三方提供的代收款.付款的平台,可以通过支付接口帮助企业或个人利用一切可以使用的支付方式.常见支付平台:支付宝.快钱.云网支付.财 ...
- Web 前端开发者必知CSS 属性
1. 圆角效果 如今的Web设计在不断跟进最新的开发技术,纷纷采用HTML5来开发多样性的Web应用.HTML5的优势之一,就是之前必须用图片实现的元素,现在可以用代码来实现. “border-ra ...
- 浮点数比较问题(float x 与 '零值'比较)
今天在牛客网上看到一道面试题,看完之后着实吃了一惊,自己平常都没有在意,看似简单的问题,实则考验了语言的基本功. 据说这是腾讯的面试题: float x 与“零值”比较的if语句为? if (x == ...
- Hibernate+JPA
参考链接:http://blog.163.com/hero_213/blog/static/398912142010312024809 近年来ORM(Object-Relational Mapping ...
- 关于机器学习-EM算法新解
我希望自己能通俗地把它理解或者说明白,但是,EM这个问题感觉真的不太好用通俗的语言去说明白,因为它很简单,又很复杂.简单在于它的思想,简单在于其仅包含了两个步骤就能完成强大的功能,复杂在于它的数学推理 ...
- IL2CPP的前世今生
在2014年年中的时候,Unity3D官方博客上却发了一篇"The future of scripting in unity"的文章,引出了IL2CPP的概念,感觉有取代Mono之 ...