Winform 下的HTML编辑器。



      很久没有写程序了。最近公司要求我更新一下公司网站,就网上下载asp源码FTP上传空间,竟然服务器里的数据库文件是只读的,没有写入权限。那更新网站只能通过FTP上传静态页面文件了。麻烦~~~。

       静态页面的创建,先在本地生成再上传了。就编写一个winform程序来制作网页,得解决winform下富文本HTML编辑问题。

       我的解决方案是使用webBrowser控件。引入一个KingEditor编辑器页面来解决。

       初始化页面编辑器全屏。

       页面添加如下代码:

<script>
function getHtml() {
 document.getElementById("tcontent").innerHTML = editor.html();
}

function setHtml(str) {
  editor.html(str);
}
</script>

winform中获取html编辑器代码:

                //这两行代码,获得编辑的HTML代码。详情看KEditor\KEditorWinForm.htm
                webBrowser1.Document.InvokeScript("getHtml");
                content = webBrowser1.Document.GetElementById("tcontent").InnerHtml;

winform中初始设置html编辑器内容:

       

        private bool isDocumentFirstCompleted = true;
        private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
        {

           //避免,KingEditor某些插件动态创建iframe会触发此事件,导致编辑会恢复初始值
            if (isDocumentFirstCompleted && (sender as  WebBrowser).Document.Title == "editor")   
            {
                isDocumentFirstCompleted = false;
                //在此设置KingEditor内容
                Object[] obArr = new Object[1];
                obArr[0] = (Object)webContentHtml;
                webBrowser1.Document.InvokeScript("setHtml", obArr);

            }
        }

其中的变量webContentHtml为初始html字符串值。

源码已上传。

http://download.youkuaiyun.com/detail/xeral/8067967

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值