WPF的文档与模板
开发工具与关键技术:
作者:薛明展
撰写时间:2021/01/20
1.文档 DocumentViewerBase 提供用于显示固定内容或流动内容(分别由 System.Windows.Documents.FixedDocument 或 System.Windows.Documents.FlowDocument 表示)的查看器的基类。 DocumentPageView 表示已分页 System.Windows.Documents.DocumentPage 的视区。 FlowDocumentPageViewer 表示一个用于在固定查看模式下查看流内容的控件,该模式一 次显示一页内容。 FlowDocument 用高级文档功能(如分页和列)承载流内容和设置流内容格式。 定义一个 文档,文档样式.
2.WPF包含数据模板和控件模板,其中控件模板又包括ControlTemplate和 ItemsPanelTemplate,这里讨论一下ControlTemplate。
其实WPF的每一个控件都有一个默认的模板,该模板描述了控件的外观(视觉树)以及外观 对外界刺激所做出的反应(触发器)。我们可以自定义一个模板来替换掉控件的默认模板 以便打造个性化的控件。 与Style不同,Style只能改变控件的已有属性值(比如颜色字体)来定制控件,但控件模板 可以改变控件的内部结构(VisualTree,视觉树)来完成更为复杂的定制,比如我们可以定 制这样的按钮:在它的左办部分显示一个小图标而它的右半部分显示文本。 要替换控件的 模板,我们只需要声明一个ControlTemplate对象,并对该ControlTemplate对象做相应的配 置,然后将该ControlTemplate对象赋值给控件的Template属性就可以了。
ControlTemplate包含两个重要的属性: 1, VisualTree,该模板的视觉树,其实我们就是使用这个属性来描述控件的外观的 2, Triggers,触发器列表,里面包含一些触发器Trigger,我们可以定制这个触发器列表 来使控件对外界的刺激发生反应,比如鼠标经过时文本变成粗体等。