轉(zhuǎn)帖|其它|編輯:郝浩|2012-02-08 20:16:50.000|閱讀 432 次
概述:在許多應(yīng)用系統(tǒng)中通過(guò)代碼來(lái)編輯文本是一個(gè)必不可少的功能,例如:將多個(gè)小文件與數(shù)據(jù)庫(kù)數(shù)據(jù)合并生成報(bào)表、電子購(gòu)物時(shí)需要?jiǎng)?chuàng)建訂單并作為HTML文件進(jìn)行發(fā)送。使用Text Control,這些操作可以使用鼠標(biāo)操作或者編碼的方式很容易的實(shí)現(xiàn)。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門(mén)軟控件火熱銷(xiāo)售中 >>
在許多應(yīng)用系統(tǒng)中通過(guò)代碼來(lái)編輯文本是一個(gè)必不可少的功能,例如:將多個(gè)小文件與數(shù)據(jù)庫(kù)數(shù)據(jù)合并生成報(bào)表、電子購(gòu)物時(shí)需要?jiǎng)?chuàng)建訂單并作為HTML文件進(jìn)行發(fā)送。使用Text Control,這些操作可以使用鼠標(biāo)操作或者編碼的方式很容易的實(shí)現(xiàn)。
本章節(jié)相應(yīng)的源代碼可以在TX Text Control.NET的安裝目錄中找到:
Samples\WinForms\VB.NET\ Editing from code
Samples\WinForms\CSharp\ Editing from code
第一節(jié):選擇與格式化文本
下面是通過(guò)編碼的方式來(lái)模擬鼠標(biāo)與菜單操作。文本字體加粗操作通常是使用鼠標(biāo)文本,然后點(diǎn)擊【Blod】按鈕來(lái)實(shí)現(xiàn),在代碼中可以使用 Text Control的Selection對(duì)象,并設(shè)置Selection.Bold屬性既可實(shí)現(xiàn)。
[C#]
textControl1.Text = "TX Text Control";
textControl1.Selection.Start = 3;
textControl1.Selection.Length = 4;
textControl1.Selection.Bold = true;
第二節(jié):查找與替換
選擇文本原始的做法是指定起始位置和長(zhǎng)度來(lái),在Text Control中可以使用TextControl.Find方法來(lái)選擇文本。下面演示通過(guò)代碼來(lái)修改選中文本的字體大小,通過(guò)類(lèi)似方法也可以替換選中的文本。
[C#]
textControl1.Text = "TX Text Control";
textControl1.Find("Text");
textControl1.Selection.FontSize = 400;
第三節(jié):添加與插入文本文件
在插入文件之前,需要通過(guò)Selection.Start屬性來(lái)指定文件插入的位置,指定插入位置之后可以調(diào)用Selection.Load()方法來(lái)插入文件、字符串或者圖片。下面演示打開(kāi)一個(gè)RTF文件,然后在指定位置插入一個(gè)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);
第四節(jié):跳轉(zhuǎn)到指定的頁(yè)、行或者列
通過(guò)Text Control的InputPosition可以取得當(dāng)前輸入位置的頁(yè)號(hào)、行號(hào)和列號(hào)。同時(shí),也可以通過(guò)InputPosition來(lái)跳轉(zhuǎn)到其它數(shù)據(jù)位置。
下面演示如何創(chuàng)建一個(gè)【Goto Page】方法。先創(chuàng)建一個(gè)InputPosition類(lèi)的對(duì)象,然后初始化為指定的頁(yè)號(hào),最后將該對(duì)象賦給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.");
}
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自:博客園