当前位置: 首页 > news >正文

往届生做网站编辑裂变营销

往届生做网站编辑,裂变营销,公司注册在上海的好处,政府网站构建与维护一、目的:介绍下在WPF中OverridesDefaultStyle属性如何使用 OverridesDefaultStyle 属性在 WPF 中用于控制控件是否使用默认的主题样式。将其设置为 True 时,控件将不会应用默认的主题样式,而是完全依赖于你在 Style 中定义的样式。以下是如何…

一、目的:介绍下在WPF中OverridesDefaultStyle属性如何使用

        OverridesDefaultStyle 属性在 WPF 中用于控制控件是否使用默认的主题样式。将其设置为 True 时,控件将不会应用默认的主题样式,而是完全依赖于你在 Style 中定义的样式。以下是如何使用 OverridesDefaultStyle 属性的详细说明和示例。


二、使用场景


•    完全自定义控件样式:当你希望完全自定义控件的外观,而不希望继承任何默认样式时,可以将 OverridesDefaultStyle 设置为 True。
•    避免样式冲突:在某些情况下,你可能希望控件不受全局样式或主题样式的影响,这时可以使用 OverridesDefaultStyle。

三、示例

以下是一个示例,展示了如何使用 OverridesDefaultStyle 属性:
完全自定义按钮样式 

 <Button Content="Button"><Button.Style><Style TargetType="Button"><!--  Set to true to not get any properties from the themes.  --><Setter Property="OverridesDefaultStyle" Value="True" /><Setter Property="Template"><Setter.Value><ControlTemplate TargetType="Button"><Grid><Ellipse Fill="{TemplateBinding Background}" /><ContentPresenter HorizontalAlignment="Center"VerticalAlignment="Center" /></Grid></ControlTemplate></Setter.Value></Setter></Style></Button.Style></Button>

可以看到对比效果

        从上面的例子可以看到,设置OverridesDefaultStyle=True的Button样式Background是null,没有从默认的Button样式中继承,这个就是OverridesDefaultStyle的主要作用,可以完全控制控件样式而不受默认样式的干扰。

 同DefaultStyleKeyProperty的区别

        在 WPF 中,OverridesDefaultStyle 和 DefaultStyleKeyProperty 是两个不同的属性,它们在自定义控件的样式和行为方面起着不同的作用。在自定义控件中我们会通过DefaultStyleKeyProperty去配置控件的默认样式,DefaultStyleKeyProperty 是一个依赖属性,用于指定控件的默认样式键。通过重写 DefaultStyleKeyProperty 的元数据,你可以为自定义控件指定一个默认样式。通常在自定义控件的静态构造函数中使用 DefaultStyleKeyProperty.OverrideMetadata 方法来设置。如:

    public class CustomControl1 : Control{static CustomControl1(){DefaultStyleKeyProperty.OverrideMetadata(typeof(CustomControl1), new FrameworkPropertyMetadata(typeof(CustomControl1)));}}

在 Generic.xaml 中定义样式

<ResourceDictionaryxmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:local="clr-namespace:WpfCustomControlLibrary1"><Style TargetType="{x:Type local:CustomControl1}"><Setter Property="Template"><Setter.Value><ControlTemplate TargetType="{x:Type local:CustomControl1}"><Border Background="LightGray" BorderBrush="Black" BorderThickness="1"><ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center"/></Border></ControlTemplate></Setter.Value></Setter></Style>
</ResourceDictionary>


•    OverridesDefaultStyle:用于指示控件是否应忽略默认的主题样式。设置为 True 时,控件将完全依赖于你在 Style 中定义的样式。
•    DefaultStyleKeyProperty:用于指定控件的默认样式键。通过重写 DefaultStyleKeyProperty 的元数据,你可以为自定义控件指定一个默认样式。


        这两个属性在自定义控件的样式和行为方面起着不同的作用,通常在自定义控件的开发中会结合使用,以实现所需的样式和行为。 

需要了解的知识点

FrameworkElement.OverridesDefaultStyle 属性 (System.Windows) | Microsoft Learn

FrameworkElement.DefaultStyleKeyProperty Field (System.Windows) | Microsoft Learn

System.Windows.Controls 命名空间 | Microsoft Learn

控件自定义 - WPF .NET Framework | Microsoft Learn

控件库 - WPF .NET Framework | Microsoft Learn

源码地址

GitHub - HeBianGu/WPF-ControlDemo: 示例

GitHub - HeBianGu/WPF-ControlBase: Wpf封装的自定义控件资源库

GitHub - HeBianGu/WPF-Control: WPF轻量控件和皮肤库

了解更多

System.Windows.Controls 命名空间 | Microsoft Learn

https://github.com/HeBianGu

HeBianGu的个人空间-HeBianGu个人主页-哔哩哔哩视频

http://www.yidumall.com/news/24186.html

相关文章:

  • 正能量软件不良网站下载免费搭建网站
  • 西安南郊做网站企业如何网络推广
  • 旅游网站的设计的前提百度官方营销推广平台
  • 济南大型网站建设如何免费创建自己的平台
  • 做网站怎么写预算公司网站
  • 套餐型网站建设合同提高关键词排名的软文案例
  • 免费网络电话软件河北百度seo点击软件
  • 中山移动网站建设报价百度在线客服人工服务
  • 温州营销网站制作费用西安专业网络推广公司
  • 微信营销 网站建设网络营销包括
  • 福州网站建设福州站建设慈溪seo排名
  • 网站布局用什么代码广告关键词有哪些类型
  • 无锡新吴区建设局网站保定seo排名优化
  • php交友网站开发实例本站3天更换一次域名yw
  • wordpress 页面类型seo手机端优化
  • 凌云网小说百度排名优化工具
  • 个人网站如何制作抖音seo公司
  • 郑州建站系统在线咨询友情链接是免费的吗
  • 交互做的好网站seoul是韩国哪个城市
  • 开网店一个月能赚多少钱在线seo关键词排名优化
  • 推荐聊城做网站的公司百度竞价推广课程
  • 7 the wordpress中国seo网站
  • 酒吧dj做歌网站百度快照怎么打开
  • 如何联系网站站长学生个人网页制作素材
  • 包头网站网站建设南宁网络优化seo费用
  • 做投资的网站好关键词推广价格
  • 微信做兼职什么网站好seo页面内容优化
  • 外贸营销型网站建设公司北京搜索引擎优化seo专员
  • 快速制作网站seo网站推广简历
  • 重庆seo1铜陵seo