1.本window设置样式
xml
复制代码
<Window x:Class="WPF_Study.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:WPF_Study"
mc:Ignorable="d"
Title="WPF入门" Height="600" Width="800">
<!--Window 资源相关-->
<Window.Resources>
<!--Style 针对按钮类型 默认样式-->
<Style TargetType="Button">
<Setter Property="Background" Value="WhiteSmoke"/>
<Setter Property="FontSize" Value="20"/>
<Setter Property="Height" Value="40"/>
<Setter Property="Width" Value="200"/>
<Setter Property="Margin" Value="0,10, 20, 20"/>
</Style>
<!--Style 继承默认样式 定义特殊属性-->
<Style x:Key="LoginStyle" TargetType="Button" BasedOn="{StaticResource {x:Type Button}}">
<Setter Property="Background" Value="Green"/>
</Style>
<!--Style 继承默认样式 定义特殊属性-->
<Style x:Key="QuitStyle" TargetType="Button" BasedOn="{StaticResource {x:Type Button}}">
<Setter Property="Background" Value="Red"/>
</Style>
</Window.Resources>
<Grid>
<StackPanel>
<!-- 设置单个按钮属性 背景色:Background 字体大小:FontSize 宽度:Width 高度:Height -->
<Button Content="登录" Background="Gray" FontSize="20" Width="200" Height="40"/>
<!-- 使用样式 LoginStyle -->
<Button Style="{StaticResource LoginStyle}" Content="登录"/>
<!-- 使用样式 QuitStyle -->
<Button Style="{StaticResource QuitStyle}">
<Button.Content>退出</Button.Content>
<Button.FontSize>20</Button.FontSize>
</Button>
<!-- 使用默认样式 -->
<Button Content="取消"/>
</StackPanel>
</Grid>
</Window>
2.全局样式设置
xml
复制代码
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<!--Style 针对按钮类型 默认样式-->
<Style TargetType="Button">
<Setter Property="Background" Value="WhiteSmoke"/>
<Setter Property="FontSize" Value="20"/>
<Setter Property="Height" Value="40"/>
<Setter Property="Width" Value="200"/>
<Setter Property="Margin" Value="0,10, 20, 20"/>
</Style>
<!--Style 继承默认样式 定义特殊属性-->
<Style x:Key="LoginStyle" TargetType="Button" BasedOn="{StaticResource {x:Type Button}}">
<Setter Property="Background" Value="Green"/>
</Style>
<!--Style 继承默认样式 定义特殊属性-->
<Style x:Key="QuitStyle" TargetType="Button" BasedOn="{StaticResource {x:Type Button}}">
<Setter Property="Background" Value="Red"/>
</Style>
</ResourceDictionary>
2.设置全局样式(修改App.xaml)
xml
复制代码
<Application x:Class="WPF_Study.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:WPF_Study"
StartupUri="MainWindow.xaml">
<!--StartupUri="MainWindow.xaml" -->
<!--设置全局样式 -->
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<!-- 样式地址 -->
<ResourceDictionary Source="/BaseButtonStyle.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
</Application>
3.设置选择样式
xml
复制代码
<Window x:Class="WPF_Study.StyleWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:WPF_Study"
mc:Ignorable="d"
Title="StyleWindow" Height="450" Width="800">
<Grid>
<StackPanel>
<!-- 设置单个按钮属性 背景色:Background 字体大小:FontSize 宽度:Width 高度:Height -->
<Button Content="登录" Background="Gray" FontSize="20" Width="200" Height="40"/>
<!-- 使用样式 LoginStyle -->
<Button Style="{StaticResource LoginStyle}" Content="登录"/>
<!-- 使用样式 QuitStyle -->
<Button Style="{StaticResource QuitStyle}">
<Button.Content>退出</Button.Content>
<Button.FontSize>20</Button.FontSize>
</Button>
<!-- 使用默认样式 -->
<Button Content="取消"/>
</StackPanel>
</Grid>
</Window>