Style


ソース:https://tip1234.tistory.com/213?category=842024

Style

<Window x:Class="WpfApp2.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:WpfApp2"
        mc:Ignorable="d"
        Title="MainWindow" Height="450" Width="800">
    <StackPanel Orientation="Horizontal">
    	<Button Content="Button1" Width="100" Height="50" Margin="10,0,0,0"/>
        <Button Content="Button2" Width="100" Height="50" Margin="10,0,0,0"/>
        <Button Content="Button3" Width="100" Height="50" Margin="10,0,0,0"/>
        <Button Content="Button4" Width="100" Height="50" Margin="10,0,0,0"/>
        <Button Content="Button5" Width="100" Height="50" Margin="10,0,0,0"/>
        <Button Content="Button6" Width="100" Height="50" Margin="10,0,0,0"/>
    </StackPanel>
</Window>
  • のワークベンチパネルに複数のボタンがインストール、「幅」、「Height」、「タグ」の3つの属性が同じであれば、上記のコードに従って作成すると、メンテナンスボタンは1つずつ修正する必要があるため、効率が低下する
  • .
    ↓修正して使うと、
    <Window x:Class="WpfApp2.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:WpfApp2"
            mc:Ignorable="d"
            Title="MainWindow" Height="450" Width="800">
        <Windows.Resources>
            <Style TargetType="{x:Type Button}" x:Key="MyBtnStyle">
                <Setter Property="Width" Value="100"/>
                <Setter Property="Height" Value="50"/>
                <Setter Property="Margin" Value="10,0,0,0"/>
            </Style>
        </Windows.Resources>
        <StackPanel Orientation="Horizontal">
        	<Button Content="Button1" Style="{StaticResource MyBtnStyle}"/>
            <Button Content="Button2" Style="{StaticResource MyBtnStyle}"/>
            <Button Content="Button3" Style="{StaticResource MyBtnStyle}"/>
            <Button Content="Button4" Style="{StaticResource MyBtnStyle}"/>
            <Button Content="Button5" Style="{StaticResource MyBtnStyle}"/>
            <Button Content="Button6" Style="{StaticResource MyBtnStyle}"/>
        </StackPanel>
    </Window>
    前述のようにButtonでスタイルを作成し、
  • で使用します.
  • スタイルを作成するには、スタイルを使用する場所ではなく、上部ラベルにアセットを定義します.
  • リソースを作成したら、スタイルラベルを開き、ターゲットとキーを設定します.
    (ターゲット定義スタイルを適用するコントロール、キーワード定義スタイルを使用するときに必要なキーワード)
  • Setterラベルを開き、属性と価値(継承構造を理解)
  • を設定します.
    スタイル=「{StaticResourceMyBtnStyle}」設定が実際に使用されているボタン
  • に適用されます.