TX Text Control .NET 产品使用指南(2)文件操作

发布时间:2012/11/16 00:11 发布者:葡萄城产品团队

返回博客中心

本章主要演示如何使用 TX Text Control .NET 加载和保存文件。

该章节相应的源代码可以在TX Text Control.NET的安装目录中找到:
        Samples\WinForms\VB.NET\ Files
        Samples\WinForms\CSharp\ Files

第一节:使用集成对话框
打开和保存文件最便捷的方法就是调用Load和Save方法,而且无需传入任何参数。通过这种方法,只需一行代码就可以打开文件对话框,选择文件类型和文件之后就可以在TextControl中显示文件的内容。



第二节:限定文件类型
缺省状态下Load和Save方法会显示所有Text Control支持的文件类型,如果你只希望显示特定的文件类型,你可以指定将被显示的文件类型参数,Text Control支持的文件类型可以通过StreamType取得。例如,只需要显示HTML和RTF类型的文件时,可以通过以下代码来实现:



第三节:显示文件名
在窗体上显示当前正在编辑文件的文件名是一个很好的用户体验,通常是访问OpenFileDialog.FileName属性来取得文件名,但此时 OpenFileDialog是在Text Control内部调用的,所以无法直接取到FileName属性。下面的代码演示了再调用Load方法是如何通过LoadSettings来取得 FileName属性:

 
[C#]
private void mnuFile_OpenFile_Click(object sender, System.EventArgs e)
{
    TXTextControl.LoadSettings LoadSettings = new TXTextControl.LoadSettings();
    textControl1.Load(TXTextControl.StreamType.All, LoadSettings);
    this.Text = LoadSettings.LoadedFile;
}
复制代码

第四节:保存文件
文字处理程序一般都有【Save...】和【Save As...】操作,如果该文件不是新创建的,那么可以直接通过【Save】方法将其保存为同样的文件名和文件类型。
示例程序中定义了DocumentFileName 和 DocumentStreamType两个变量,用于保存当前文件的文件名和文件类型,当打开文件时会更新这两个变量的值。
当点击【Save】时,如果DocumentFileName 和 DocumentStreamType有值就直接保存;如果是新建的文档将显示一个保存对话框:

 
[C#]
private void mnuFile_Save_Click(object sender, System.EventArgs e)
{
    TXTextControl.SaveSettings SaveSettings = new TXTextControl.SaveSettings();
    if (DocumentFileName != "" )
    {
        // save under same name and type
        textControl1.Save(DocumentFileName, DocumentStreamType);
    }
    else
    {
        // save as..
        textControl1.Save(TXTextControl.StreamType.All, SaveSettings);
        DocumentFileName = SaveSettings.SavedFile;
        DocumentStreamType = SaveSettings.SavedStreamType;
    }
}
复制代码

第五节:导出PDF和CSS文件
PDF 和CSS格式需要特别注意,他们可以被保存,但是不能被在加载。比如你将文件保存为PDF文件,但是再次加载后不能像保存前那样进行编辑,CSS信息也不会被保存到文档中。解决这个问题最好的方法就是添加一个导出功能【Export...】,保存文件原始的格式信息。

 
[C#]
private void mnuFile_Export_Click(object sender, System.EventArgs e)
{
    textControl1.Save(TXTextControl.StreamType.AdobePDF);
}
复制代码

关于葡萄城

赋能开发者!葡萄城是专业的集开发工具、商业智能解决方案、低代码开发平台于一身的软件和服务提供商,为超过 75% 的全球财富 500 强企业提供服务。葡萄城专注控件软件领域30年,希望通过模块化的开发控件、灵活的低代码应用开发平台等一系列开发工具、解决方案和服务,帮助开发者快速响应复杂多变的业务需求,最大程度地发挥开发者的才智和潜能,让开发者的 IT 人生更从容更美好。

了解详情,请访问葡萄城官网