欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

WPF Style样式

程序员文章站 2022-03-07 14:21:24
...

样式分为属性样式、内联样式、引用样式。
属性样式:直接通过UI元素的属性设置的样式。
内联样式:通过在UI元素中嵌入Style节点来设置样式。
引用样式:定义在资源字典中的样式

属性样式是直接通过UI元素的属性设置的样式,所以属性元素就直接在UI元素中定义就行了。
下面是属性样式的例子

<Window x:Class="_1701_Client.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Grid>
   <TextBlock Width="100" Height="100" FontSize="18">样式</TextBlock>
</Grid>
</Window>

在WPF中我们使用Style样式来设置空间的属性值,并使该设置影响到指定范围的所以该类控件或影响指定的某一控件。

内联样式是设置元素的Style属性,在属性的中中间添加Style样式。

<Window x:Class="_1701_Client.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Grid Grid.Column="1" Background="White">
      <Button>
      	  <Button.Style>
      			<Style TargetType="Button">
     			<Setter Property="Width" Value="100"></Setter>
      			<Setter Property="Height" Value="30"></Setter>
               </Style>
           </Button.Style>
      </Button>
</Grid>
</Window>

引用样式分为页面级样式、应用程序级样式。
页面级样式(定义在资源字典中,作用范围为整个页面):

<Window.Resources>
    <Style TargetType="Button" x:Key="btn">
        <Setter Property="Foreground" Value="White"></Setter>
        <Setter Property="FontSize" Value="17"></Setter>
    </Style>
</Window.Resources>
<Grid>
    <Button Style="{StaticResource btn}" Content="按钮" Width="100" Height="30"></Button>
</Grid>

上面在Window窗口里面直接定义样式,由于TargetType=“Button”表示该Style的作用对象是Button类的实例,也就是说在Window窗体中所以的Button都受上面定义的Stylr样式影响。不过后面加了一个x:Key=”btn”键等于btn说明如果要调用这个样式的话,就需要在Button中添加一个Stylr=”{StaticResoure btn}”才行,这样才能调用上面定义的Style类。

应用程序级样式(定义在App.xaml里面):

<Application.Resources>
        <Style x:Key="btn" TargetType="{x:Type Button}">
            <Setter Property="Width" Value="100"></Setter>
            <Setter Property="Height" Value="20"></Setter>
        </Style>
</Application.Resources>