C#应用程序设计教程 第2版 教学课件 作者 耿肇英 周真真 耿燚 第3章 WPF文本编辑器.pptVIP

C#应用程序设计教程 第2版 教学课件 作者 耿肇英 周真真 耿燚 第3章 WPF文本编辑器.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第三章 WPF文本编辑器 学习目的 本章目的是建立一个文本编辑器,同时继续介绍控件的用法。有两类文本编辑器: 单文档文本编辑器一次只能打开一个文件,如果要打开另一个文件,必须关闭当前打开的文件,微软的写字板程序就是单文档字处理程序。 多文档文本编辑器允许同时打开多个文件,每个文件占用一个子窗口,微软的Word程序就是多文档字处理程序。 主要内容 3.1 文档布局 3.2 RichTextBox控件 3.3 Command实现编辑功能 3.4 存取文件 3.5 About对话框 3.6 文本编辑器查找替换功能 3.7 提示用户保存已被修改的文件 3.8 打印和打印预览 3.9 多选项卡页的文本编辑器 3.1 文档布局 WPF 基于文档用途将文档分成两大类别: 固定文档适用于“所见即所得”应用程序,任何显示器显示的内容和格式以及任何打印机打印的内容和格式完全相同。固定文档的典型例子是字处理程序。 而流文档(FlowDocument)会根据窗口大小、设备分辨率和用户的选择来动态调整和重新排列文档内容。网页就是流文档的一个简单示例。此外,流文档还具有很多内置功能,包括搜索、能够优化可读性的查看模式以及更改字体大小和外观的功能。 有四个控件对流文档提供支持:RichTextBox 、FlowDocumentPageViewer、FlowDocumentReader和 FlowDocumentScrollViewer。RichTextBox控件可以编辑流文档内容,其余三种控件只能查看文档。 【例3.1】使用FlowDocumentReader控件例子,XAML标记如下。所有查看控件都必须使用 FlowDocument控件来记录流内容。例子中Paragraph是段落标记,List是列表项标记,Table是表标记,BlockUIContainer块标记,类似Word程序文本框,可放入文字图形等,如果希望图形被文字环绕,可将BlockUIContainer块标记放到Figuer或Floates标记中,这两个标记就像一个小型FlowDocument,不但可放入图像,也可放入其他对象,例如表格。还可以有Section节标记等。运行效果见图3.1,请注意排版格式和窗体大小有关。读者可更改FlowDocumentReader为其他查看控件看一下效果。 流文档(FlowDocument)包括很多内容,使用TextPointer类来表示流文档位置,位置或落在内容中的字符之间,或者落在定义内容结构的流内容元素标记之间。常用方法如下: public int CompareTo(TextPointer position):比较位置顺序。 public TextPointerContext GetPointerContext(LogicalDirection direction):返回和调用本方法的TextPointer类对象相邻内容类别,TextPointerContext.None表示内容的开头或末尾相邻,TextPointerContext.Text表示和文本相邻,其他选项略。参数是LogicalDirection.Forward,表示其后部相邻的内容,LogicalDirection.Backward表示其前部相邻的内容。 public string GetTextInRun(LogicalDirection direction):得到相邻文本。 public TextPointer GetPositionAtOffset(int offset):移动到新位置,参数为移动偏移量。 public TextPointer GetNextContextPosition(LogicalDirection direction):下一位置。 3.2 RichTextBox控件 RichTextBox控件可用来输入和编辑文本。控件常用属性、事件和方法如下: 属性Selection:选定文本内容。 FontFamily、FontSize、FontStretch、FontStyle、FontWeight和Foreground:修改字符的字体属性。 属性Document:记录输入到控件中的内容。 属性AcceptsTab和AcceptsReturn:是否允许使用TAB键和回车键换行。 属性SpellCheck.IsEnabled:是否允许拼写检查。 事件TextChanged:RichTextBox控件内的内容被改变时发生的事件。 方法Copy、Cut、Paste、Redo和Undo:实现控件剪贴板功能和撤消、恢复命令。 方法SelectAll():RichTextBox为文本编辑控件时选择的全部内容。 3.3 Command实现编

您可能关注的文档

文档评论(0)

118压缩包课件库 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档