WPF:如何放弃所有继承的样式?
如何告诉控件或控件块不要继承任何样式并恢复为默认值WPF:如何放弃所有继承的样式?,wpf,styles,Wpf,Styles,如何告诉控件或控件块不要继承任何样式并恢复为默认值 我需要这个,因为我有一个总体主题,大部分都很有效,但对于一件作品来说,我的设计真的很糟糕。这很棘手,但你可以试试这个 创建DefaultStyles资源字典 创建要保留默认样式的控件的命名样式,如下所示 <Style x:Key="DefaultButtonStyle" TargetType="{x:Type Button}" BasedOn="{StaticResource {x:Type Button}
我需要这个,因为我有一个总体主题,大部分都很有效,但对于一件作品来说,我的设计真的很糟糕。这很棘手,但你可以试试这个
<Style
x:Key="DefaultButtonStyle"
TargetType="{x:Type Button}"
BasedOn="{StaticResource {x:Type Button}}"/>
您可以为相关UI创建自己的容器,并设置为
SkipAllNow
(或适合您的情况的值):
然后,您可以将
NoInheritanceContentControl
粘贴到可视化树中,其中的任何内容都不会继承样式。这会断开与外部和继承数据上下文的绑定。(在任何子级中)合并的资源字典不再向BasedOn=“{StaticResource{x:Type…}”
提供样式。我修补了两天,运气不好。:/如果我遗漏了什么,请告诉我。
using System.Windows;
using System.Windows.Controls;
public class NoInheritanceContentControl : ContentControl
{
public NoInheritanceContentControl()
{
InheritanceBehavior = InheritanceBehavior.SkipAllNow;
}
}