0601模板的作用与意义

了解WPF页面渲染中不可或缺的模板功能。与布局、样式一样,在WPF开发中,模板是无处不在,学习模板即可对页面进行更多细致化的处理。

WPF有没有什么UI库?

开源的,免费的,都是模版来操作的,

比如:按钮还是按钮,加载了模版资源之后,显示就不一样了

 

有一些改成自己的ZysButton 

内容渲染细致化,没设计到UI库很少用

按照自己的业务场景,都是根据自己的业务场景自己定义,设计风格问题

通用的风格可能不适用我自己的项目,要根据自己的风格,圆角还是直角

引用不同的设计稿,库来处理

 

MVC或Winform定义的比较死

重新实现工作量非常大

 

用WPF工作量会减少非常多,处理机制不一样

 

数据模板和控件模板选择哪个的问题

DEV框架

MahApps后面会有这样一个库,一些基本模板样式用,一个引子,其他都是差不多的

有收费的

APP.Resource引入什么资源,肯定就是基于模版来的

自己实现的话,只是引入什么控件库,一套控件库,ZysButton

所有的控件都得实现一遍

 

 

 

 

一、模版在渲染中的作用

1、什么是模板?模板与模板存在的意义
从宏观到微观。社会是有人组成的,人还有器官,到细胞层面,更多了

标签是宏观,细化到细胞,就是控件模板,显示出来的效果就是通过控件模板的意义

一个button添加上来,为什么会显示灰色,文字为什么会居中,运行起来相应鼠标动作,grid没有

button是控件模版,来显示的,框架提供的

标签的嵌套,是页面逻辑树,每个标签之间的关系,谁包含谁

还有视觉树,只是有更多的细节,背景色、文字,视觉呈现

两个树,关键就是一个属性Template

所有属性都可以在样式style里面呈现,Template也是样式的一个属性

        <Style TargetType="Button">
            <Style.Triggers>
                <Trigger Property="IsMouseOver" Value="True">
                    <Setter Property="Background" Value="Red"/>
                    <Setter Property="Template"/>
                </Trigger>
            </Style.Triggers>
        </Style>

 

 

 

 


2、模板与样式

 给Button.Template提供了一个ControlTemplate的实例对象

 可以按照自己的思路去写

外面的Content跟里面没有任何关系,是里面的起作用

 Content是Object类型

 

内容肯定得变,每个按钮不一样的功能名称

控件模板里面什么能写,什么不能写?

 

posted on 2025-04-10 14:03  张彦山  阅读(14)  评论(0)    收藏  举报