WPF样式
2016-01-11 23:31
579 查看
<Window x:Class="WpfApplication1.Window1" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:UC="clr-namespace:WpfApplication1" xmlns:UC1="clr-namespace:WpfControlLibrary1;assembly=WpfControlLibrary1" xmlns:sys="clr-namespace:System;assembly=mscorlib" Title="Window1" Height="300" Width="300"> <Window.Resources> <!-- Button控件样式 --> <Style TargetType="Button"> <Setter Property="Background" Value="Pink"/> <Setter Property="FontSize" Value="22"/> </Style> <!-- XAML的Class --> <Style x:Key="mystyle" TargetType="ContentControl"> <Setter Property="Background" Value="Peru"/> <Setter Property="FontSize" Value="30"/> </Style> <!-- 继承mystyle --> <Style x:Key="mystyle2" TargetType="ContentControl" BasedOn="{StaticResource ResourceKey=mystyle}"> <!--覆盖基类样式--> <Setter Property="Background" Value="Red" /> </Style> </Window.Resources> <Grid> <Grid.RowDefinitions> <RowDefinition Height="*"/> <RowDefinition Height="*"/> <RowDefinition Height="*"/> <RowDefinition Height="*"/> </Grid.RowDefinitions> <Grid.ColumnDefinitions> <ColumnDefinition Width="*"/> </Grid.ColumnDefinitions> <Button Content="Button" Grid.Row="0"/> <Button Style="{StaticResource ResourceKey=mystyle}" Content="XAML的Class" Grid.Row="1"/> <Button Style="{StaticResource ResourceKey=mystyle2}" Content="样式的继承mystyle" Grid.Row="2"/> <Button Content="Button嵌入样式" Grid.Row="3"> <Button.Resources> <Style TargetType="Button" > <Setter Property="Background" Value="Coral"></Setter> </Style> </Button.Resources> </Button> </Grid> </Window>
<Window x:Class="WpfApplication1.Window1" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:UC="clr-namespace:WpfApplication1" xmlns:UC1="clr-namespace:WpfControlLibrary1;assembly=WpfControlLibrary1" xmlns:sys="clr-namespace:System;assembly=mscorlib" Title="Window1" Height="300" Width="300"> <Window.Resources> <Style x:Key="TriggersStyle" TargetType="Label"> <Setter Property="Background" Value="BurlyWood"/> <Style.Triggers> <!--Triggers单一条件触发事件 当IsMouseOver的时候,Button颜色变成粉色 --> <Trigger Property="IsMouseOver" Value="True"> <Setter Property="Background" Value="Pink"/> </Trigger> </Style.Triggers> </Style> <Style x:Key="MultiTriggerStyle" TargetType="Button"> <Setter Property="Background" Value="BurlyWood"/> <Style.Triggers> <!--MultiTrigger多条件触发事件 当IsMouseOver后IsPressed时候,字体30号 --> <MultiTrigger> <MultiTrigger.Conditions> <Condition Property="IsMouseOver" Value="True"></Condition> <Condition Property="IsPressed" Value="True"></Condition> </MultiTrigger.Conditions> <Setter Property="FontSize" Value="30"/> </MultiTrigger> </Style.Triggers> </Style> <Style x:Key="DataTriggerStyle" TargetType="Control"> <Setter Property="Background" Value="Brown"/> <Style.Triggers> <!-- 绑定当前的radio单选框,如果按钮选中,触发字体设置 --> <DataTrigger Binding="{Binding ElementName=radio, Path=IsChecked}" Value="True"> <Setter Property="FontSize" Value="30"/> </DataTrigger> </Style.Triggers> </Style> </Window.Resources> <Grid> <Grid.RowDefinitions> <RowDefinition Height="*"></RowDefinition> <RowDefinition Height="*"></RowDefinition> <RowDefinition Height="*"></RowDefinition> </Grid.RowDefinitions> <Grid.ColumnDefinitions> <ColumnDefinition Width="*"></ColumnDefinition> </Grid.ColumnDefinitions> <Label Style="{StaticResource ResourceKey=TriggersStyle}" Content="Triggers"></Label> <Button Style="{StaticResource ResourceKey=MultiTriggerStyle}" Content="MultiTrigger" Grid.Row="1"></Button> <RadioButton Style="{StaticResource ResourceKey=DataTriggerStyle}" Name="radio" Content="我要变成20号字" Grid.Row="2"></RadioButton> </Grid> </Window>
相关文章推荐
- 编写可维护的css
- modal 控制器的样式
- CSS + Div 学习总结
- CSS元素分类
- 自定义上传按钮样式的终极解决方案_input透明法
- 问题与对策:CSS的margin塌陷(collapse)
- CSS里的单位介绍
- CSS的margin属性实例
- CSS学习笔记——定位position属性的学习
- Ionic基础——CSS布局
- 类似时间轴的样式
- css笔记重点
- CSS样式随笔总结
- QT设置ToolButton按钮的样式
- CSS入门
- dedecms的arclist循环中判断第一个li添加css,否则不加
- css_兼容IE和FF的写法
- CSS中的层叠上下文和层叠顺序
- CSS3动画属性animation的基本用法
- css3 3d展示中rotate()介绍与简单实现