概要
Styleでコントロールのプロパティを一括設定します。
Window.Resourcesタグで囲まれた中のStyleタグで設定します。
Styleタグでの設定よりも、各コントロールにじかに記載したプロパティの方が優先されます。
ビュー、コード
ビュー XAML
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
<Window x:Class="StyleTest.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:StyleTest" mc:Ignorable="d" Title="MainWindow" Height="370.308" Width="309.615"> <Window.Resources> <Style TargetType="Button"> <Setter Property="Background" Value="Azure"/> <Setter Property="Margin" Value="10,10,10,10"/> </Style> <Style TargetType="Label"> <Setter Property="HorizontalContentAlignment" Value="Center"/> <Setter Property="Margin" Value="10,10,10,10"/> </Style> <Style x:Key="BlackStyle" TargetType="{x:Type Label}"> <Setter Property="Background" Value="Black"/> <Setter Property="Foreground" Value="White"/> <Setter Property="HorizontalContentAlignment" Value="Center"/> <Setter Property="Margin" Value="10,10,10,10"/> </Style> <Style x:Key="MyBorderStyle" TargetType="Border"> <Setter Property="BorderBrush" Value="Black" /> <Setter Property="BorderThickness" Value="2" /> <Setter Property="CornerRadius" Value="3" /> <Setter Property="Margin" Value="10,10,10,10"/> </Style> </Window.Resources> <Grid> <StackPanel> <Button x:Name="button1" >button1</Button> <Button x:Name="button2" >button2</Button> <Button x:Name="button3" >button3</Button> <Label x:Name="label1">label1</Label> <Label x:Name="label2">label2</Label> <!-- 「sytle=""」でStyleの内容を選択できる --> <Label x:Name="label3" Style="{StaticResource BlackStyle}">label3</Label> <Border Style="{StaticResource MyBorderStyle}"> <!-- コントロールに直接プロパティを記述すると、直接記述の内容が優先される --> <Label Content="My Label" Margin="0,0,0,0"/> </Border> </StackPanel> </Grid> </Window> |
コード
なし。
補足
なし
コメント