天天看點

TX Text Control文字處理教程(2)- 檔案操作

該章節相應的源代碼可以在TX Text Control.NET的安裝目錄中找到: 

       Samples\WinForms\VB.NET\ Files 

       Samples\WinForms\CSharp\ Files

<b>第一節:使用內建對話框</b> 

打開和儲存檔案最便捷的方法就是調用Load和Save方法,而且無需傳入任何參數。通過這種方法,隻需一行代碼就可以打開檔案對話框,選擇檔案類型和檔案之後就可以在TextControl中顯示檔案的内容。 

<b>第二節:限定檔案類型</b> 

預設狀态下Load和Save方法會顯示所有Text Control支援的檔案類型,如果你隻希望顯示特定的檔案類型,你可以指定将被顯示的檔案類型參數,Text Control支援的檔案類型可以通過StreamType取得。例如,隻需要顯示HTML和RTF類型的檔案時,可以通過以下代碼來實作: 

<b>第三節:顯示檔案名</b> 

在窗體上顯示目前正在編輯檔案的檔案名是一個很好的使用者體驗,通常是通路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;  

<b>第四節:儲存檔案</b> 

文字處理程式一般都有【Save...】和【Save As...】操作,如果該檔案不是新建立的,那麼可以直接通過【Save】方法将其儲存為同樣的檔案名和檔案類型。 

示例程式中定義了DocumentFileName 和 DocumentStreamType兩個變量,用于儲存目前檔案的檔案名和檔案類型,當打開檔案時會更新這兩個變量的值。 

當點選【Save】時,如果DocumentFileName 和 DocumentStreamType有值就直接儲存;如果是建立的文檔将顯示一個儲存對話框:

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;  

<b>第五節:導出PDF和CSS檔案</b> 

PDF和CSS格式需要特别注意,他們可以被儲存,但是不能被在加載。比如你将檔案儲存為PDF檔案,但是再次加載後不能像儲存前那樣進行編輯,CSS資訊也不會被儲存到文檔中。解決這個問題最好的方法就是添加一個導出功能【Export...】,儲存檔案原始的格式資訊。

private void mnuFile_Export_Click(object sender, System.EventArgs e)  

    textControl1.Save(TXTextControl.StreamType.AdobePDF);  

 本文轉自 powertoolsteam 51CTO部落格,原文連結:http://blog.51cto.com/powertoolsteam/769734,如需轉載請自行聯系原作者