代码改变世界

wpf日历控件制作过程分析(2)---自定义样式属性

  Clingingboy  阅读(2043)  评论(1编辑  收藏  举报
接上篇wpf日历控件制作过程分析(1)---定义header

在header中,我们看到了定义一个自定义样式TitleStyle

1.自定义样式

看后台代码定义

Code

应该说,是比较简单的,默认样式为null,如果指定了样式的话,则会覆盖默认的样式

2.不重叠选择样式

为日历的前进和后退按钮定义两个样式
Code

再来这个RefreshNextButtonStyle方法

Code

注意点:
1.GetTemplateChild可以获取到xaml中声明了key值的元素,c_NextButtonName变量就是xaml定义的key,此key应该公开给控件的使用者,可调整样式
2.用TemplatePart公开模块样式,如两个按钮的key值
    [TemplatePart(Name = "PART_PreviousButton", Type = typeof(ButtonBase))]
    [TemplatePart(Name 
= "PART_NextButton", Type = typeof(ButtonBase))]
3._defaultNextButtonStyle还是从xaml去找,其目的是为了自定义样式不会与默认样式发生冲突.可以title样式比较
4.构建可视化模板需要在OnApplyTemplate方法中使用,如上面的RefreshNextButtonStyle方法必须在OnApplyTemplate方法中调用
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
历史上的今天:
2007-06-18 能够支持反编译asp.net ajax客户端脚本的软件
2007-06-18 AjaxControlToolkit常用元数据和基类
点击右上角即可分享
微信分享提示