前言:
现在姐妹们对“css中id是什么属性”都比较重视,大家都需要剖析一些“css中id是什么属性”的相关文章。那么小编也在网络上收集了一些有关“css中id是什么属性””的相关文章,希望朋友们能喜欢,各位老铁们一起来学习一下吧!摘要
样式是组织和重用以上的重要工具。不是使用重复的标记填充XAML, 通过Styles创建一系列封装所有这些细节的样式。然后通过Style属性应用封装好的样式。这点类似于CSS样式。
WPF样式也支持触发器(trigger),当属性发生变化时,可通过触发器改变控件的样式,并且可使用模板重新定义控件的内置外观。
正文
给所有某一类标签相同样式
<Window.Resources> <Style TargetType="{x:Type Label}"> <Setter Property="Margin" Value="10"></Setter> <Setter Property="FontSize" Value="20"></Setter> </Style></Window.Resources><StackPanel> <Label Content="Label1" Background="#54B458"></Label> <Label Content="Label2" Background="#00BED6"></Label> <Label Content="Label3" Background="#5479F5"></Label> <Label Content="Label4" Background="#FF9400"></Label> <Label Content="Label5" Background="#FF4DA0"></Label></StackPanel>
指定xKey名
<Window.Resources> <Style TargetType="{x:Type Label}" x:Key="LabelStyle"> <Setter Property="Margin" Value="10"></Setter> <Setter Property="FontSize" Value="20"></Setter> </Style></Window.Resources><StackPanel> <Label Content="Label1" Background="#54B458" Style="{StaticResource LabelStyle}"></Label> <Label Content="Label1" Background="AliceBlue"></Label></StackPanel>
样式名称(Key):如果不指定Key名称,则默认会全局引用,学过HTML的都知道,这有点类似于HTML中CSS的标签选择器,而你指定Key后,就类似于CSS的id选择器
Setters集合是Style类中最重要的属性,但并非唯一属性。Style类中共有5个重要属性。
<Window.Resources> <Style x:Key="BackStyle"> <Setter Property="Control.Margin" Value="10"></Setter> <Setter Property="Control.Foreground" Value="Red"></Setter> <Setter Property="Control.Background"> <Setter.Value> <ImageBrush ImageSource="/user.png" TileMode="Tile" Viewport="0 0 32 32" ViewportUnits="Absolute"></ImageBrush> </Setter.Value> </Setter> </Style></Window.Resources><StackPanel> <Label Content="Label6" Style="{StaticResource BackStyle}"></Label></StackPanel>
关联事件处理程序
属性设置器是所有样式中最常见的要素,但也可以创建为事件关联特定事件处理程序的EventSetter对象的集合。
<Window.Resources> <Style x:Key="lblStyle"> <Setter Property="Control.Margin" Value="5"></Setter> <Setter Property="Control.Padding" Value="5"></Setter> <Setter Property="Control.Foreground" Value="Blue"></Setter> <EventSetter Event="Control.MouseEnter" Handler="FrameworkElement_MouseEnter"></EventSetter> <EventSetter Event="Control.MouseLeave" Handler="FrameworkElement_MouseLeave"></EventSetter> </Style></Window.Resources><StackPanel> <Label Content="TextBlock1" Style="{StaticResource lblStyle}"></Label> <Label Content="TextBlock2" Style="{StaticResource lblStyle}"></Label> <Label Content="TextBlock3" Style="{StaticResource lblStyle}"></Label> <Label Content="TextBlock4" Style="{StaticResource lblStyle}"></Label> <Label Content="TextBlock5" Style="{StaticResource lblStyle}"></Label></StackPanel>
private void FrameworkElement_MouseEnter(object sender, MouseEventArgs e){ ((Label)sender).Background = new SolidColorBrush(Colors.Gold);}private void FrameworkElement_MouseLeave(object sender, MouseEventArgs e){ ((Label)sender).Background = new SolidColorBrush(Colors.White);}
继承样式
<Window.Resources> <Style x:Key="FontStyle"> <Setter Property="Control.FontSize" Value="30"></Setter> </Style> <Style x:Key="lblStyle" BasedOn="{StaticResource FontStyle}"> <Setter Property="Control.Margin" Value="5"></Setter> <Setter Property="Control.Padding" Value="5"></Setter> <Setter Property="Control.Foreground" Value="Blue"></Setter> <EventSetter Event="Control.MouseEnter" Handler="FrameworkElement_MouseEnter"></EventSetter> <EventSetter Event="Control.MouseLeave" Handler="FrameworkElement_MouseLeave"></EventSetter> </Style></Window.Resources>
使用类型标记扩展来隐式地设置键名
<Window.Resources> <Style x:Key="{x:Type Button}"> <Setter Property="Button.Margin" Value="5"></Setter> <Setter Property="Button.Padding" Value="5"></Setter> <Setter Property="Button.Background"> <Setter.Value> <LinearGradientBrush> <LinearGradientBrush.GradientStops> <GradientStop Color="#ff0000" Offset="0"></GradientStop> <GradientStop Color="#ffffff" Offset="1"></GradientStop> </LinearGradientBrush.GradientStops> </LinearGradientBrush> </Setter.Value> </Setter> </Style></Window.Resources><StackPanel> <Button Content="Button1"></Button> <Button Content="Button2"></Button> <Button Content="Button3"></Button></StackPanel>
标签: #css中id是什么属性