WPF笔记之控件模板

WPF笔记之控件模板

  1. 逻辑树:xaml页面上嵌套的元素、属性等。 可视化树:xaml中所有元素和元素控件模板中的元素属性等
    通过System.Windows.LogicalTreeeHelper和System.Windows.Media.VisualTreeHelper
  2. ContentPresenter 元素表示“在此插入内容”
  3. 模板绑定可以让模板从应用模板的控件中提取一个值。如:margin = “{TemplateBinding Padding}”
    margin 指容器对控件边距,Padding 指控件内部输入边距的,只有部分控件有此属性
  4. 触发器先后顺序:从触发器列表中顺序执行。后面的触发器动作可能会覆盖前面的。
  5. 一种比较好的组织方式是讲每个控件的模板放在单独的资源字典里面,将画刷放到单独的资源字典里面
  6. 控件模板中定义了新的样式以及触发器,但是如果想要通过样式修改外观和触发器,可以在样式中应用模板,然后规定画刷和触发器等,但是样式中不能包含Setter.TargetName属性。做主题使用这个方式非常好,可以方便的修改软件的颜色方案。
  7. 通过Style 的targetType属性能使样式自动应用实现主题的效果,只需要在App的资源字典中添加即可
  8. 代码中可以通过检索ResourcDictionary 对象更换this.Resource.MergedDictionaries[0]对象更换样式
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值