当前位置 : 主页 > 手机开发 > 其它 >

重置继承的WPF样式?

来源:互联网 收集:自由互联 发布时间:2021-06-19
在我的应用程序的App.xaml部分中,我有一个ResourceDictionary元素,它以DataGridColumnHeader和DataGridCell为目标,并对它们应用自定义样式.这些定义是全局的(因为它们不使用x:key – 它们适用于该类
在我的应用程序的App.xaml部分中,我有一个ResourceDictionary元素,它以DataGridColumnHeader和DataGridCell为目标,并对它们应用自定义样式.这些定义是全局的(因为它们不使用x:key – 它们适用于该类型的所有实例).

是否可以将这些类型的样式完全重置为“基础”Aero主题(或当前正在使用的任何主题),以便在我的应用程序的子部分中使用?

我试过用了

<Style TargetType="{x:Type DataGridColumnHeader}" BasedOn="{StaticResource {x:Type DataGridColumnHeader}}">
    </Style>

这似乎没有做任何事情,因为我猜它只是继承自己.

有两种方法可以重置样式:

>将元素的style属性设置为{x:Null}.你必须对每个元素都这样做.

<Button Height="50" Style="{x:Null}"></Button>

>在包含要重置的元素的元素的资源中定义空样式.不要指定BasedOn,否则它将继承所有属性并且不会将它们重置为标准(正如您正确注意到的那样).

<Style TargetType="{x:Type DataGridColumnHeader}">
</Style>
网友评论