博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
TX Text Control文字处理教程(6)通过代码编辑和格式化文本
阅读量:5738 次
发布时间:2019-06-18

本文共 1742 字,大约阅读时间需要 5 分钟。

hot3.png

在许多应用系统中通过代码来编辑文本是一个必不可少的功能,例如:将多个小文件与数据库数据合并生成报表、电子购物时需要创建订单并作为HTML文件进行发送。使用Text Control,这些操作可以使用鼠标操作或者编码的方式很容易的实现。

本章节相应的源代码可以在TX Text Control.NET的安装目录中找到:

Samples\WinForms\VB.NET\ Editing from code

Samples\WinForms\CSharp\ Editing from code

第一节:选择与格式化文本

        下面是通过编码的方式来模拟鼠标与菜单操作。文本字体加粗操作通常是使用鼠标文本,然后点击【Blod】按钮来实现,在代码中可以使用 Text Control的Selection对象,并设置Selection.Bold属性既可实现。

 

 
[C#]   textControl1.Text = "TX Text Control";   textControl1.Selection.Start = 3;   textControl1.Selection.Length = 4;   textControl1.Selection.Bold = true; 

 

第二节:查找与替换

        选择文本原始的做法是指定起始位置和长度来,在Text Control中可以使用TextControl.Find方法来选择文本。下面演示通过代码来修改选中文本的字体大小,通过类似方法也可以替换选中的文本。

 

 
[C#]   textControl1.Text = "TX Text Control";   textControl1.Find("Text");   textControl1.Selection.FontSize = 400; 

第三节:添加与插入文本文件

        在插入文件之前,需要通过Selection.Start属性来指定文件插入的位置,指定插入位置之后可以调用Selection.Load()方法来插入文件、字符串或者图片。下面演示打开一个RTF文件,然后在指定位置插入一个HTML文件:

 

 
[C#]   textControl1.Load("..\\..\\TestFiles\\Caption.rtf", XTextControl.StreamType.RichTextFormat);   textControl1.Selection.Start = textControl1.Text.Length;   textControl1.Selection.Load ("..\\..\\TestFiles\\Net.htm",   TXTextControl.StreamType.HTMLFormat); 

第四节:跳转到指定的页、行或者列

通过Text Control的InputPosition可以取得当前输入位置的页号、行号和列号。同时,也可以通过InputPosition来跳转到其它数据位置。
        下面演示如何创建一个【Goto Page】方法。先创建一个InputPosition类的对象,然后初始化为指定的页号,最后将该对象赋给TextControl.InputPosition属性。

 

 
[C#]   frmGotoPage GotoPage = new frmGotoPage();   GotoPage.ShowDialog();          if (GotoPage.PageNo > 0 && GotoPage.PageNo <= textControl1.Pages)   {       TXTextControl.InputPosition InputPosition =           new TXTextControl.InputPosition(GotoPage.PageNo,1,0);       textControl1.InputPosition = InputPosition;   }   else   {       MessageBox.Show("Page number outside valid range.");   } 

 

本文出自 “” 博客,请务必保留此出处

转载于:https://my.oschina.net/powertoolsteam/blog/278216

你可能感兴趣的文章
[译] 图解 React Native
查看>>
腾讯喻帅:腾讯云智慧零售产品发布
查看>>
一次被僵尸网络病毒攻击的过程
查看>>
Java高级特性增强-锁
查看>>
CNCF案例研究:PingCAP
查看>>
Python的新式类和经典类
查看>>
公用事业公司正在转向云计算
查看>>
使用 top instance 命令查看运行中 MaxCompute 作业
查看>>
Python决策权的投票结果诞生了,“指导委员会”模式拔得头筹
查看>>
Python模块分析:第1节-random模块
查看>>
[LeetCode] 354. Russian Doll Envelopes
查看>>
Visual Studio 2017 15.6预览版最新进展
查看>>
Visual Studio 2017的第五个更新包扩展了调试工具
查看>>
敏捷宣言和企业Scrum作者Mike Beedle去世
查看>>
京东购物在微信等场景下的算法应用实践
查看>>
QLoo推出用于现有服务的GraphQL接口
查看>>
RedHat宣布支持Azure、.Net Core 2.0和SQL Server 2017
查看>>
Hyperledger Grid:一个用于分布式供应链解决方案的框架
查看>>
红帽发布 Ansible Tower 3.4:在混合云中实践DevOps更便捷
查看>>
Ooui:在浏览器中运行.NET应用
查看>>