TX Text Control可以与任意数据库建立连接,并将进行格式化文本的存储。你可以将整个文档当做一条数据进行保存,同时也可以将文本从数据库中加载到一个单元格或者标记文本域中。一些典型的应用系统通常拥有以下功能,邮件合并、报表生成、格式化数据掩码输入,而且在商业应用系统中都是通过数据库中的信息来生成相应的文档。
本章将演示如何将Text Control中的内容以RTF格式的文本存储到数据库中。本章节相应的源代码可以在TX Text Control.NET的安装目录中找到:
Samples\WinForms\VB.NET\ Database
Samples\WinForms\CSharp\ Database
第一节:示例程序
该示例程序包含一个Form和两个Text Control控件。两个Text Control控件显示的是数据库中的同一条记录,上面的控件显示的是格式化文本,下面的控件显示的是相应的RTF源码。点击【Next】按钮将保存当前记录,并显示下一条记录。
第二节:保存数据
Text Control通过Load和Save方法来进行数据访问操作。Save将格式化文本存储在一个字符串进行返回,然后将返回的字符串保存到数据库中。同时,通过Save方法的第二个参数可以将Text Control文档内容保存为其它格式。
[C#] private void PutRecord() { string sRTFData; textControl1.Save (out sRTFData, TXTextControl.StringStreamType.RichTextFormat); dsRTFData.Tables[0].Rows[iCurrentRow][0] = sRTFData; }
第三节:加载数据
TextControl.Load方法用于加载在TextControl中显示的RTF格式文本,通过TextControl.Texrt属性可以很方便的设置文档内容。TextControl文档有两种显示方式1、Text Control控件的显示方式 2、显示RTF源码。
[C#] private void GetRecord() { string sRTFData = dsRTFData.Tables[0].Rows[iCurrentRow].ItemArray[0].ToString() ; textControl1.Load(sRTFData, TXTextControl.StringStreamType.RichTextFormat); textControl2.Text = sRTFData; }
该示例中文档使用的格式是RTF格式,RTF是大多文字处理程序选用的格式。然而,Text Control的二进制格式可能会是更好的选择,因为它有更高的压缩率、占用更小的存储空间。