Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/318.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#WPF-如何重用ToogleButton样式_C#_Wpf - Fatal编程技术网

C#WPF-如何重用ToogleButton样式

C#WPF-如何重用ToogleButton样式,c#,wpf,C#,Wpf,几天前我开始学习WPF,并想尝试让TicTacToe与之配合。对于字段,我实现了一个Toogle按钮,该按钮在交叉、圆形和空图像之间循环。为此,我在代码隐藏中实现了一个方法。这是按钮的WPF实现: <ToggleButton Click="Button_Click" Name="Field00" Background="Transparent"> <DynamicResource

几天前我开始学习WPF,并想尝试让TicTacToe与之配合。对于字段,我实现了一个Toogle按钮,该按钮在交叉、圆形和空图像之间循环。为此,我在代码隐藏中实现了一个方法。这是按钮的WPF实现:

<ToggleButton Click="Button_Click" Name="Field00" Background="Transparent">
                    <DynamicResource ResourceKey="Empty"/>
                    <ToggleButton.Style>                        
                        <Style TargetType="{x:Type ToggleButton}">
                            <Setter Property="Template">
                                <Setter.Value>
                                    <ControlTemplate TargetType="ToggleButton">
                                        <Border BorderBrush="{TemplateBinding BorderBrush}" 
                                                Background="{TemplateBinding Background}">
                                            <ContentPresenter HorizontalAlignment="Center"                  
                                              VerticalAlignment="Center"/>
                                        </Border>
                                    </ControlTemplate>
                                </Setter.Value>
                            </Setter>
                            <Style.Triggers>
                                <Trigger Property="IsMouseOver" Value="True">
                                    <Setter Property="Background" Value="Transparent"/>
                                </Trigger>
                            </Style.Triggers>
                        </Style>
                    </ToggleButton.Style>
</ToggleButton>

现在这是一个相当大的代码块,因为只有ToggleButton.Style位。对于剩下的字段,我必须复制8次。有没有一种方法可以基于此样式定义某种模板,以便我可以将其用于其他按钮?这将使代码更具可读性。谢谢大家!