C# 全局样式和局部样式替代同一控制下的全局样式

C# 全局样式和局部样式替代同一控制下的全局样式,c#,wpf,xaml,resourcedictionary,wpf-style,C#,Wpf,Xaml,Resourcedictionary,Wpf Style,我在DefaultTheme.xaml文件中声明了类型菜单项的全局样式 <Style TargetType="{x:Type MenuItem}"> . . . </Style> 这也将应用全局样式。我不想让这种地方风格继承全球风格。所以我可以通过给..来覆盖这个。。在我的用户控件中 这里有一个问题,如果我这样做,我将无法将全局样式应用于控件中的其他位置,因为我已经在本地重写了它。这应该如何处理呢?基于这一点,你的叙述是相反的。由于本地样式不是从

我在DefaultTheme.xaml文件中声明了类型菜单项的全局样式

<Style TargetType="{x:Type MenuItem}">
    .
    .
    .
</Style>
这也将应用全局样式。我不想让这种地方风格继承全球风格。所以我可以通过给..来覆盖这个。。在我的用户控件中

这里有一个问题,如果我这样做,我将无法将全局样式应用于控件中的其他位置,因为我已经在本地重写了它。这应该如何处理呢?

基于这一点,你的叙述是相反的。由于本地样式不是从基础继承的,因此基础样式将不会应用于本地样式

如果这样做,我将无法将全局样式应用于控件中的其他位置,因为我已在本地重写了此样式

这不会发生,因为本地样式是用键声明的,并且它将应用于引用键的MenuItem。Rest all将与全局样式一起应用

<ResourceDictionary.MergedDictionaries>
    <ResourceDictionary  Source="../DefaultTheme.xaml" />
</ResourceDictionary.MergedDictionaries>
<Style  x:Key="LocalStyle" TargetType="{x:Type MenuItem}">
    .
    .
    .
</Style>