TX Text Control .NET 产品使用指南(6)通过代码编辑和格式化文本

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

发布于 2012/11/16 00:00

在许多应用系统中通过代码来编辑文本是一个必不可少的功能,例如:将多个小文件与数据库数据合并生成报表、电子购物时需要创建订单并作为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;
复制代码

。下面演示打开一个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.");
}
复制代码

关于葡萄城

葡萄城是专业的软件开发技术和低代码平台提供商,以“赋能开发者”为使命,致力于通过表格控件、低代码和BI等各类软件开发工具和服务,一站式满足开发者需求,帮助企业提升开发效率并创新开发模式。葡萄城开发技术始于1980年,40余年来始终聚焦软件开发技术,有深厚的技术积累和丰富的产品线。是业界能够同时赋能软件开发和低代码开发的企业。凭借过硬的产品能力、活跃的用户社区和丰富的伙伴生态,与超过3000家合作伙伴紧密合作,产品广泛应用于信息和软件服务、制造、交通运输、建筑、金融、能源、教育、公共管理等支柱产业。

推荐相关案例
推荐相关资源
关注微信
葡萄城社区二维码

关注“葡萄城社区”

加微信获取技术资讯

加微信获取技术资讯

想了解更多信息,请联系我们, 随时掌握技术资源和产品动态