WPF文本显示:

WPF面向的是UI展现,而文本显示无疑是UI层中的重要功能之中的一个。WPF提供了XPS
(XML 文件规范)
和Flow Document (流文档)
来在不同的场景下展现或者操作文档的显示。XPS(XML
文件规范)针对打印和面向页面的内容,而”流文档”则针对屏幕显示以及提供更动态和能够论证的更复杂模型。“流文档”差点儿适用于与文本内容相关的全部方面。从产品说明到整本书籍。

Flow Document是WPF3.0中提供的一个用于显示的新功能,它给了开发者还有一种选择去显示内容。

Flow
Document通过类似 HTML
文档的格式定义文本流,但其功能更强大,并可提供明显更先进的布局选项。它内置了非常多的元素。比如。Figure, Paragraph, Section, Floater, Table, InlineUIContainer等能够通过不同的布局和元素控制其显示方式。而且。它支持对图像的支持,使其能够像在HTML中一样任意控制。

再加上其默认支持的导航,显示模式。搜索,让其内容展现方式有了进一步的提高。

Flow Document (流文本):

Flow Document定义了这个流文档的顶级显示模式。在其内部能够包括诸如Section, Paragraph等标签用来控制其层级显示模式。这就类似于HTML中的DIV,TABLE等区域控制标签一样用来组成文档的显示结构。定义一个流文档非常easy,你能够通过声明一个Flow
Document和其内部的显示结构就可以。比例如以下面代码通过显示了怎样来创建了简单的显示功能。http://www.360doc.com/content/08/0730/16/51673_1489442.shtml

显示模式 :

Flow Document默认支持三种展现方式,这也相应了上图中右下方的三个button。默认的Flow Document会以FlowDocumentReader来生成。对于不同的展现方式,其包括的导航。搜索等都有所不同,甚至缺少某些功能。

·        
FlowDocumentPageViewer
:以单独的页面显示流文档。此选项以单独的页面显示流文档,让页面翻转而非滚动。

这与 Word
中的“阅读版式”类似。以                   下XAML片段声明了文章以FlowDocumentPageViewer的方式显示。FlowDocumentPageViewer将提供以翻页的方式来导航内
                  容页。通过你调整窗体的大小。流文档会依据内容的位置、尺寸来调整流的布局(这就是你为什么会在变化窗体大小的                   时候看到多列的原因,流的布局变化)。

·        
FlowDocumentScrollViewer:以连续的流显示文档,通过滚动栏导航。使用一个滚动栏以连续的流显示文档。类似网页或 Microsoft Word
中的”Web
版                   式”。ScrollViewer模式不过以连续的方式显示流文档的内容,所以其不具备PageViewer的能够自己主动变化流布局的高级功
                  能。

在调整窗体大小时,流文档无法以多页或多列的方式显示。

·        
FlowDocumentReader
:   组合了滚动查看器和页面查看器,让用户能够在两种方法之间切换。这是用于流文档的默认选项。

此控件组合了滚动查看                   器和页面查看器,让用户能够在两种方法之间切换。

这是用于流文档的默认控件,并且对于以显示复杂文本为特色的应用                   程序一般是一个不错的选择。除了将标记用FlowDocumentReader替换前边的两个标记中不论什么一个。便能够轻松使用这样的
                  高级的展现。

转自:http://www.cnblogs.com/tianguook/p/4165476.html

WPF 流文档的更多相关文章

  1. WPF界面设计技巧(11)-认知流文档 & 小议WPF的野心

    原文:WPF界面设计技巧(11)-认知流文档 & 小议WPF的野心 流文档是WPF中的一种独特的文档承载格式,它的书写和呈现方式都很像HTML,它也几乎具备了HTML的绝大多数优势,并提供了更 ...

  2. WPF中使用流文档

    转载自:http://www.cnblogs.com/zlgcool/archive/2008/11/17/1335456.html WPF面向的是UI展现,而文本显示无疑是UI层中的重要功能之一.W ...

  3. WPF,Silverlight与XAML读书笔记第四十三 - 多媒体支持之文本与文档

    说明:本系列基本上是<WPF揭秘>的读书笔记.在结构安排与文章内容上参照<WPF揭秘>的编排,对内容进行了总结并加入一些个人理解. Glyphs对象(WPF,Silverlig ...

  4. 一天搞定CSS: 浮动(float)及文档流--10

    浮动(float),一个我们即爱又恨的属性.爱,因为通过浮动,我们能很方便地布局: 恨,浮动之后遗留下来太多的问题需要解决,特别是IE6-7(以下无特殊说明均指 windows 平台的 IE浏览器). ...

  5. 前端学习 -- Css -- 文档流

    文档流 文档流处在网页的最底层,它表示的是一个页面中的位置, 我们所创建的元素默认都处在文档流中 元素在文档流中的特点 块元素 块元素在文档流中会独占一行,块元素会自上向下排列. 块元素在文档流中默认 ...

  6. 内联元素的盒子模型与文档流定位padding属性

            内联元素的盒子模型 1.内联元素不能设置width宽度和高度height span{width:200px ; height:200px}   与     span{width:100 ...

  7. 文档流&文字&CSS常用命令

    文档流 文档流就是文档内元素流动方向 流动方向 内联元素从左往右流,宽度不够,之字形,且元素会被截断 块元素从上往下流动,一排一排 注意事项 内联元素中有英文单词,流动时宽度不够,英文单词会整体迁移, ...

  8. Oracle 远程访问配置 在 Windows Forms 和 WPF 应用中使用 FontAwesome 图标 C#反序列化XML异常:在 XML文档(0, 0)中有一个错误“缺少根元素” C#[Win32&WinCE&WM]应用程序只能运行一个实例:MutexHelper Decimal类型截取保留N位小数向上取, Decimal类型截取保留N位小数并且不进行四舍五入操作

    Oracle 远程访问配置   服务端配置 如果不想自己写,可以通过 Net Manager 来配置. 以下配置文件中的 localhost 改为 ip 地址,否则,远程不能访问. 1.网络监听配置 ...

  9. 【H5疑难杂症】脱离文档流时的渲染BUG

    BUG重现 最近机票团队在一个页面布局复杂的地方发现一个BUG,非常奇怪并且不好定位,这类问题一般最后都会到我这里,这个问题是,改变dom结构,页面却不渲染!!! 如图所示,我动态的改变了dom结构, ...

随机推荐

  1. CMSIS-SVD Example (Schema Version 1.1)

    <?xml version="1.0" encoding="utf-8"?> <!-- File naming: <vendor> ...

  2. Struts2 @ResultPath注释示例

    在Struts 2中, @ResultPath 注解用于控制Struts2找到存储的结果或JSP页面.默认情况下,它会找到结果页在 “WEB-INF/content/” 文件夹. 不知道为什么在Str ...

  3. Visual Studio IDE 背景色该为保护眼睛色

    将背景颜色改成你想要的背景颜色. 将色调改为:85.饱和度:123.亮度:205->添加到自定义颜色->在自定义颜色选定点确定   就搞定了!

  4. Hibernate:不容易理解的 lock 和 merge

    背景 lock 和 merge 在字面上很容易理解它们的语义,不过它们的实际行为所代表的语义范围要大一点,本文就简单的记录下来,还请朋友们多批评和指正. Lock 官方的注释 /** * Obtain ...

  5. [Linux] Ubuntu下的文件比较工具--meld

    在ubuntu中需要比较文件的差异,于是安装meld apt-get install meld 安装完后,在/usr/bin/下找到meld,然后发送到桌面上, 或者在命令行执行meld命令 打开后选 ...

  6. Sql server left join,right join和inner join的比较

    转载于:http://www.2cto.com/database/201206/137067.html   Sql server left join,right join和inner join的比较 ...

  7. OpenMP 线程同步之临界区

    多核/多线程编程中肯定会用到同步互斥操作.除了互斥变量以为,就是临界区. 临界区是指在用一时刻只允许一个线程执行的一段用{...},包围的代码段. 在OpenMP中临界区声明方法如下: #pragma ...

  8. Tensorflow之调试(Debug) && tf.py_func()

    Tensorflow之调试(Debug)及打印变量 tensorflow调试tfdbg 几种常用方法: 1.通过Session.run()获取变量的值 2.利用Tensorboard查看一些可视化统计 ...

  9. 详解REMOTE_ADDR,HTTP_CLIENT_IP,HTTP_X_FORWARDED_FOR

    转载自:http://www.cnblogs.com/lmule/archive/2010/10/15/1852020.html 看ecshop的lib_base.php的时候里面获取客户端真实ip的 ...

  10. [AngularJS] Angular 1.3 ngAria - 2

    This is an highlight about ngAira in Angular Document abou ngAira Where can use ngAria? Currently, n ...