添加后 Reste telerik 主题 <Style>

Reste telerik Theme after add <Style>

我想将我的 WPF 和 C# 代码更改为 telerik。在更改之前,我有一些工作区的 HeaderContentControl

我的XAML代码

<HeaderedContentControl 
      Content="{Binding Workspaces}"
      ContentTemplate="{StaticResource WorkspacesTemplate}"
      Style="{StaticResource MainHCCStyle}"
/>

我的资源

<Style x:Key="MainHCCStyle" TargetType="{x:Type HeaderedContentControl}>
 <Setter Property="Template">
  <Setter.Value>
    <ControlTemplate TargetType="{x:Type HeaderedContentControl}>
      <DockPanel>
        <ContentPresenter 
          ContentSource="Content" 
           ContentTemplate="{TemplateBinding ContentTemplate}" 
         />
       </DockPanel>
     </ControlTemplate>
   </Setter.Value>
 </Setter>
</Style>

<DataTemplate x:Key="WorkspacesTemplate">
        <TabControl 
      IsSynchronizedWithCurrentItem="True" 
      ItemsSource="{Binding}" 
      ItemTemplate="{StaticResource ClosableTabItemTemplate}"
      Margin="4"
      />
</DataTemplate>

将代码修改为 Telerik 后,我的代码如下所示

我的XAML代码

<telerik:RadTabbedWindow
  Content="{Binding Workspaces}"
  ContentTemplate="{StaticResource WorkspacesTemplate}"
  telerik:StyleManager.Theme="Office2016"
  Style="{StaticResource MainHCCStyle}"
  />

我的资源

<Style x:Key="MainHCCStyle" TargetType="{x:Type telerik:RadTabbedWindow}">
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type telerik:RadTabbedWindow}">
                    <DockPanel>
                        <ContentPresenter 
              ContentSource="Content" 
              ContentTemplate="{TemplateBinding ContentTemplate}" 
              />
                    </DockPanel>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

<DataTemplate x:Key="WorkspacesTemplate">
        <TabControl 
      IsSynchronizedWithCurrentItem="True" 
      ItemsSource="{Binding}" 
      ItemTemplate="{StaticResource ClosableTabItemTemplate}"
      Margin="4"
      />

</DataTemplate>

工作区工作正常,但 Telerik 主题不起作用(telerik:StyleManager.Theme="Office2016")。样式只有在我删除它们时才会激活 Style="{StaticResource MainHCCStyle}",但是工作区不起作用

RadTabbedWindow 为目标的自定义 Style 正在覆盖其 ControlTemplate(通过 Template 属性)。这意味着控件的默认外观被替换为 Style 中定义的 Dock 面板。

要实现此功能,请设置 RadTabbedWindowContentTemplate,而不是其模板 属性。