我为DataGrid创建了一个自定义样式。我的应用程序中有几个数据网格,我希望这种样式适用于所有这些。
这样做的一种方法是将Style="{StaticResource DataGridDefaultStyle}"
添加到所有DataGrids。
但是必须有另一种方法可以做到这一点,类似于添加主题,我会声明样式,它会自动应用于所有DataGrids。
我该怎么做?
答案 0 :(得分:2)
答案 1 :(得分:2)
您可以尝试使用implicit style。
答案 2 :(得分:2)
您可以像其他人所说的那样使用隐式样式,但是将它放在App.Xaml文件的Application.Resources部分中,这样就可以将样式应用于应用程序中的所有DataGrids。
<Application.Resources>
<Style TargetType="DataGrid">
<Setter Property="Background" Value="LightBlue" />
</Style>
</Application.Resources>
答案 3 :(得分:1)
要创建隐式样式,您不得包含样式的键并指定TargetType。如果这样做,样式将自动应用于指定类型的每个样式。
例如,此代码将自动应用于所有DataGrid元素:
<Style TargetType="DataGrid">
<!-- style information goes here -->
</Style>