分享一個Winform里面的HTML編輯控件Zeta HTML Edit Control,漢化附源碼


我們知道,Web開發上有很多HTML的編輯控件,如FCKEditor、CKEditor、kindeditor等等,很多都做的很好,而雖然Winform里面有WebBrowser控件,但是默認這個控件是不允許編輯內容的,可以顯示網頁而已。Winform開發里面,有些使用RichTextBox控件來編輯HTML,也有一些結合WebBrowser控件來實現內容的編輯,其中我覺得做的最好的應該是Zeta HTML Edit Control(http://www.codeproject.com/Articles/43954/ZetaHtmlEditControl),這個控件是在CodeProject上開源公布的,同時也在GitHub上有一個項目的維護(https://github.com/UweKeim/ZetaHtmlEditControl)。本文主要介紹這個控件的使用,以及對其進行一些資源的中文漢化工作,使得我們在實際使用中更方便,並附上修改過的控件源碼,希望大家有所收益。

1、控件的界面效果

控件默認很多工具欄和菜單,都是英文的,它的默認效果如下所示。

Zeta HTML Edit Control

對其所有英文的菜單、工具欄、對話框、提示內容等資源進行中文化后,並在工具欄中增加插入圖片、打印功能后,界面如下所示。

 

2、控件的使用

控件的一些功能是可以通過配置屏蔽或者顯示的,默認它的初始化代碼如下所示。

htmlEditUserControl1.Configure(new HtmlEditControlConfiguration{AllowFontChange = true, AllowEmbeddedImages=true, AllowPrint = true});
            htmlEditUserControl1.IsToolbarVisible = true;

AllowFontChange 如果設置為True,可以在工具欄出現字體大小的設置內容。

AllowEmbeddedImages,可以把從剪切板里面的圖片轉換為Base64的字符串的字符串內容,放到HTML控件里面。

AllowPrint是可以打印的功能。

控件可以通過幾種方式進行HTML的賦值的,如下所示。

const string s = @"<P><b>Some tests</b></P><p>Random content. <font color=green>Please edit</font>.</p><p>Use right-click for options.</p>";
htmlEditControl1.DocumentText = s;

或者

const string s = @"<P>Click the buttons below to set different texts. German Umlaute: ???????</p>";
htmlEditControl1.SetDocumentText(s, @"C:\", true);

控件的工具欄可以根據需要隱藏或者顯示

htmlEditUserControl1.IsToolbarVisible = ToolbarVisibleCheckBox.Checked;

 

3、控件的存在問題

這個控件在使用過程中,發現有一些小問題。

1)必須對控件的DocumentText賦值,才能獲取HTML的內容,否則在控件中輸入內容后,通過代碼獲取到的DocumentText是空的。

htmlEditUserControl1.HtmlEditControl.DocumentText = "伍華聰的測試內容";

2)控件的HtmlEditControl對象在設計的時刻不出現在只能提示里面,但是使用沒問題,很奇怪。

 

4、對控件進行漢化后,整個控件的源碼

對控件全面進行了中文化修改,方便我們日常的使用。

控件下載地址如下:http://files.cnblogs.com/wuhuacong/ZetaHtmlEditControl.rar

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM