分享一个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、控件的界面效果
控件默认很多工具栏和菜单,都是英文的,它的默认效果如下所示。
对其所有英文的菜单、工具栏、对话框、提示内容等资源进行中文化后,并在工具栏中增加插入图片、打印功能后,界面如下所示。
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
分享一个Winform里面的HTML编辑控件Zeta HTML Edit Control,汉化附源码的更多相关文章
- 仿酷狗音乐播放器开发日志二十三 修复Option控件显示状态不全的bug(附源码)
转载请说明原出处,谢谢~~ 整个仿酷狗工程的开发将近尾声,现在还差选项设置窗体的部分,显然在设置窗体里用的最多的就是OptionUI控件,我在写好大致的布局后去测试效果,发现Option控件的显示效果 ...
- C#:WebBrowser控件设置代理IP访问网站【附源码】
软件截图 源码下载 http://download.csdn.net/detail/php_fly/8041731
- jQuery里面的datepicker日期控件默认是显示英文的,如何显示中文或其他语言呢?
jQuery里面的datepicker日期控件默认是显示英文的,如何让他显示中文或其他呢? [官方的写法]: (1)引入JS文件: <script type="text/javascr ...
- 福利到~分享一个基于jquery的智能提示控件intellSeach.js
一.需求 我们经常会遇到[站内搜索]的需求,为了提高用户体验,我们希望能做到像百度那样的即时智能提示.例如:某公司人事管理系统,想搜索李XX,只要输入“李”,系统自然会提示一些姓李的员工,这样方便用户 ...
- 分享一个 C# Winfrom 下的 OutlookBar 控件的使用
最近在上网的时候,发现了这个C# 下的 OutlookBar 控件,看了一下感觉还真不错,特此记录一下. using System; using System.Drawing; using Syste ...
- 玩转控件:重绘DEVEXPRESS中DateEdit控件 —— 让DateEdit支持只选择年月 (提供源码下载)
前言 上一篇博文<玩转控件:重绘ComboBox —— 让ComboBox多列显示>中,根据大家的回馈,ComboBox已经支持筛选了,更新见博文最后最后最后面. 奇葩 这两天遇到 ...
- android多框架实现短视频应用、3D手势旋转、banner控件、指南针、智能管家等应用源码
Android精选源码 android智能管家app源码 Android高仿拼多多分类列表 Android百度地图实例详解之仿摩拜单车APP RecyclerView的LayoutManager搭建流 ...
- 基于wke封装的duilib的webkit浏览器控件,可以c++与js互交,源码及demo下载地址
转载请说明原出处,谢谢~~ 前些日子用wke内核封装了duilib的webkit浏览器控件,好多群里朋友私聊我希望可以我公布源码,今天把这个控件的源码和使用demo公布.其实这个控件封装起来没什么难度 ...
- WTL版本ACEdit控件,改写自MFC版,附带源码
自动完成是个很酷也很实用的功能,比如在浏览器地址栏输入几个字母,相关的记录就会在下拉框中陈列出来. 最近在做公司产品UI部分的改善,原版本是MFC做的,我决定用WTL,于是就遇到自动完成控件的问题.遍 ...
随机推荐
- 防抖(Debounce)与节流( throttle)区别
http://www.cnblogs.com/ShadowLoki/p/3712048.html http://blog.csdn.net/tina_ttl/article/details/51830 ...
- C#后台弹出对话框
Page.ClientScript.RegisterStartupScript(this.GetType(), "", "<script language='jav ...
- 2014年黑金FPGA原创教程规划发布
2014年已经过去快一半了,才出黑金2014年的FPGA原创教程规划,有点对不起大家了,哈哈! 俗话说,亡羊补牢,为时不晚,希望大家谅解啊,对于大家的支持,我们黑金人一向是感激.感恩.感谢! 下面大概 ...
- Openvswitch原理与代码分析(5): 内核中的流表flow table操作
当一个数据包到达网卡的时候,首先要经过内核Openvswitch.ko,流表Flow Table在内核中有一份,通过key查找内核中的flow table,即可以得到action,然后执行acti ...
- (笔记)Linux内核学习(四)之系统调用
一 用户空间和内核空间 Linux内核将这4G字节虚拟地址空间的空间分为两部分: l 将最高的1G字节(从虚拟地址0xC0000000到0xFFFFFFFF),供内核使用,称为“内核空间”. l ...
- [转]一个小试验验证对象的指针计数置为nil的情况
本文转载于新风作浪的博客专栏,博客地址:http://blog.csdn.net/duxinfeng2010/article/details/8757211 以下博客原文: 最近遇到这样一个问题,以前 ...
- WinFrom 登录窗体 密码保存效果
WinFrom 登录窗体 保存密码效果 开发CS程序的程序员都会遇到 今天突然想把这个功能加到我的项目中 之后总结下 不多说 上图 如果关闭程序 下次在登录的时候 用户名.密码会自动保留下来 一 ...
- Win7“当前用户没有安装Microsoft Office"
故障:在win7 win10系统已安装office2007~但打开word excel应用程序时提示"当前用户没有安装Microsoft Office". 原因:office200 ...
- 从头构建自己的Linux系统
2012-09-10 在博文“Linux系统启动过程分析”中我们了解了linux系统的启动流程,今天我们就来手动一步一步从头来构建一个最小的linux系统,然后用模拟器将其加载起来.常见 ...
- 如何编写Angular指令
[20140917]Angular:如何编写一个指令 *:first-child { margin-top: 0 !important; } body>*:last-child { margin ...