咱們知道,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)。本文主要介紹這個控件的使用,以及對其進行一些資源的中文漢化工做,使得咱們在實際使用中更方便,並附上修改過的控件源碼,但願你們有所收益。html
控件默認不少工具欄和菜單,都是英文的,它的默認效果以下所示。git
對其全部英文的菜單、工具欄、對話框、提示內容等資源進行中文化後,並在工具欄中增長插入圖片、打印功能後,界面以下所示。github
控件的一些功能是能夠經過配置屏蔽或者顯示的,默認它的初始化代碼以下所示。dom
htmlEditUserControl1.Configure(new HtmlEditControlConfiguration{AllowFontChange = true, AllowEmbeddedImages=true, AllowPrint = true}); htmlEditUserControl1.IsToolbarVisible = true;
AllowFontChange 若是設置爲True,能夠在工具欄出現字體大小的設置內容。工具
AllowEmbeddedImages,能夠把從剪切板裏面的圖片轉換爲Base64的字符串的字符串內容,放到HTML控件裏面。測試
AllowPrint是能夠打印的功能。字體
控件能夠經過幾種方式進行HTML的賦值的,以下所示。spa
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);
控件的工具欄能夠根據須要隱藏或者顯示code
htmlEditUserControl1.IsToolbarVisible = ToolbarVisibleCheckBox.Checked;
這個控件在使用過程當中,發現有一些小問題。
1)必須對控件的DocumentText賦值,才能獲取HTML的內容,不然在控件中輸入內容後,經過代碼獲取到的DocumentText是空的。
htmlEditUserControl1.HtmlEditControl.DocumentText = "伍華聰的測試內容";
2)控件的HtmlEditControl對象在設計的時刻不出如今只能提示裏面,可是使用沒問題,很奇怪。
對控件全面進行了中文化修改,方便咱們平常的使用。
控件下載地址以下:http://files.cnblogs.com/wuhuacong/ZetaHtmlEditControl.rar