<Style x:Key="ToolBarButton" TargetType="{x:Type Button}">
<Setter Property="Control.Background" Value="#00000000"/>
<Setter Property="Control.Width" Value="25"/>
<Setter Property="Control.Height" Value="25"/>
</Style>
...
<Grid HorizontalAlignment="Left">
<Button Style="{StaticResource ToolBarButton}"/>
<Button Style="{StaticResource ToolBarButton}"/>
<Button Style="{StaticResource ToolBarButton}"/>
<Button Style="{StaticResource ToolBarButton}"/>
<Button Style="{StaticResource ToolBarButton}"/>
<Button Style="{StaticResource ToolBarButton}"/>
</Grid>
我想优化我的 XAML 代码。我不想为每个按钮指定样式,但我希望每个按钮都有我的样式。
有可能做这样的事情吗?只工作... :)
<Grid x:Name="gToolBar" Grid.Row="1" HorizontalAlignment="Left" Style="{StaticResource ToolBarButton}">
<Button/>
<Button/>
<Button/>
<Button/>
<Button/>
<Button/>
</Grid>
我不只使用 TargetType,因为我还有其他不同样式的按钮。我认为它可用,但我不知道如何。
谢谢...
正如我已经说过在评论中要做的一切,但为了进一步澄清:
我想优化我的 XAML 代码。我不想为每个按钮指定样式,但我希望每个按钮都有我的样式。
移动Style
部分<Application.Resources>
中的App.xaml文件中,像图所示:
<Application.Resources>
<Style TargetType="Button" >
<Setter Property="Control.Background" Value="#00000000"/>
<Setter Property="Control.Width" Value="25"/>
<Setter Property="Control.Height" Value="25"/>
</Style>
</Application.Resources>
注意:我已经删除了x:Key
部分。现在这将应用于应用程序中的所有按钮。
我不只使用 TargetType,因为我还有其他不同样式的按钮。我认为它可用,但我不知道如何。
为此,您必须将自定义按钮制作为 a UserControl
,从而使它们与通常的Button
. 将样式应用到它们自己的UserControl.Resources
. 因此中提到的样式App.Resources
不会影响这些定制的UserControls
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句