0602控件模板的定义与使用
1、右键按钮,编辑模版

一下子在Window.Resource增加了很多代码,button里面增加了Style的属性,光标放在上面,F12可以直接定位到样式


关键的

<ControlTemplate TargetType="{x:Type Button}"> 同
<ControlTemplate TargetType="Button">
既能显示文本,又能显示控件,关键是因为ContentPresenter

2、Snoop工具

可以定位到窗口,会显示出逻辑树的详细


代码里面只能看到ContentPresenter
Snoop可以看的更底层还有一个TextBlock,string类型默认的就是一个Textblock
不管什么开发框架都需要有对象承载,不能只是一个string字符串放到控件内部

第二个是一个控件,就会直接显示一个TextBox

ContentPresenter属于内容占位

如果是String的时候,会在ContentPresenter创建一个TextBlock
如果是TextBox对象的话,会直接放到ContentPresenter里面
浙公网安备 33010602011771号