WPF 8(WPF样式与资源)
2016-09-27 15:36
369 查看
WPF样式与资源
在控件中我们一般可以通过属性来设置它们的样式,如果我们要对很多控件用同一种样式。该怎么办能呢?方法一:就是在每个控件的属性中该,显然这不是一种明智的选择。
那我们就用法二:
我们可以在他的父容器里的Style.Resource里设置。因为这样其他控件(在同一个父容器中)也可以访问到。
下面我用demo来讲解。
我们现在窗体上拖3个Button控件。我们在Window.Resources里设置它的Style
<Window.Resources> <Style x:Key="BtnStyle" TargetType="Button"> <Setter Property="Background" Value="yellow"/> </Style> </Window.Resources>
这里要有TargetType用来识别绑定对象是什么。
接下来我们在Button上绑定Style
<Grid> <Button Style="{StaticResource BtnStyle}" Content="Button" Height="43" HorizontalAlignment="Left" Margin="33,35,0,0" Name="button1" VerticalAlignment="Top" Width="88" /> <Button Style="{StaticResource BtnStyle}" Content="Button" Height="43" HorizontalAlignment="Left" Margin="149,35,0,0" Name="button2" VerticalAlignment="Top" Width="85" /> <Button Style="{StaticResource BtnStyle}" Content="Button" Height="43" HorizontalAlignment="Left" Margin="261,35,0,0" Name="button3" VerticalAlignment="Top" Width="84" /> </Grid>
其实就这个 Style="{StaticResource BtnStyle}"
效果图:
刚刚改变的是背景色,前景色呢?
我们只要加
<Setter Property="Foreground" Value="red"/>
如图:
若我们要给他些事件呢。比如鼠标移到Button上,会发生什么变化,按下去会发生什么变化。
这就要用到Style.Triggers
<Window.Resources> <Style x:Key="BtnStyle" TargetType="Button"> <Style.Triggers> <Trigger Property="Button.IsMouseOver" Value="True"> <Setter Property="Background" Value="lightBlue"/> </Trigger> <Trigger Property="Button.IsPressed" Value="True"> <Setter Property="Background" Value="Blue"/> </Trigger> </Style.Triggers> <Setter Property="Background" Value="yellow"/> <Setter Property="Foreground" Value="red"/> </Style> </Window.Resources>
看到在原来插入的Style.Triggers了不。
效果图:
鼠标移过。
鼠标按下
因为两者颜色差不多
所以不太清楚的区别。
结束。
相关文章推荐
- JQ修改css样式小结
- CSS样式控制超长文本在div,p等块级容器中的自动换行
- CSS子元素跟父元素的高度一致
- CSS3动画(360度旋转、旋转放大、放大、移动)
- css3
- 盘点8种CSS实现垂直居中水平居中的绝对定位居中技术
- CSS3 滤镜学习
- CSS3 滤镜学习
- display:flex浏览器兼容
- 火狐下pre标签如何换行
- css 样式中类之间有空格和无空格的区别
- 修改Push动画样式
- CSS vertical-align 属性
- HTML&CSS基础学习笔记1.34-通用选择器
- 谈谈一些有趣的CSS题目(五)-- 单行居中,两行居左,超过两行省略
- 用CSS样式画横线和竖线的方法
- 推荐大家使用的CSS书写规范、顺序
- 响应式手机商城页面顶部样式HTML代码
- ProgressBar的样式和Dialog的样式文件
- 探索 CSS3 中的 box-shadow 属性