以下资料有参考网上其它童鞋作品,原作者看到务喷!!!!

以下资料有参考网上其它童鞋作品,原作者看到务喷!!!!

重要的事只要说两遍。。。

网上找了几天关于WinForm富文本编辑效果都不理想,各种坑,直到看到网上某个童鞋作品。

经过改进之后效果还不错。

效果如下

 

务求源码,自已动手丰衣足食!!!!

第一步 配置KindEditor

官方下载 kindeditor http://kindeditor.net/down.php

只解压这些文件,当然还可以精简只是没功夫懒得研究了。

因为WinForm程序权限大得很,不可能为了选图片再配一个IIS来上传,所以去掉自带上传功能。

打开:kindeditor\plugins\image.js

查找 if (showLocal && showRemote && tabs && tabs.selectedIndex === 1 || !showRemote) {

注释掉里面的东西

					// insert local image
if (showLocal && showRemote && tabs && tabs.selectedIndex === 1 || !showRemote) {
//跳过上传
//if (uploadbutton.fileBox.val() == '') {
// alert(self.lang('pleaseSelectFile'));
// return;
//}
//dialog.showLoading(self.lang('uploadLoading'));
//uploadbutton.submit();
//localUrlBox.val('');
//return;
}

查找 uploadbutton.fileBox.change(function (e) {

修改成如下

               //浏览文件事件
uploadbutton.fileBox.change(function (e) {
urlBox.val(uploadbutton.fileBox.val());//把选中的图片赋值给网络图片地址
localUrlBox.val(uploadbutton.fileBox.val());
K(".ke-tabs-li", div)[0].click();//切换到网络图片
K(".ke-refresh-btn", div).click();//点击刷新图片大小
});

这样就取消上传这个步骤。

第二步 配置调用HTML文件

创建一个HTML文件命名随意,如:WinForm.Html

<!doctype html>
<html>
<head>
<meta charset="utf-8" />
<title>Html Editor</title>
<script charset="utf-8" src="kindeditor-min.js"></script>
<script charset="utf-8" src="lang/zh_CN.js"></script>
<script>
window.onerror = function () { return true; };
var editor;
KindEditor.ready(function (K) {
editor = K.create('#content', {
allowFileManager: false,
allowImageUpload: false,
items: [
'source', '|', 'undo', 'redo', '|', 'formatblock', 'fontname', 'fontsize', '|',
'forecolor', 'hilitecolor', 'bold', 'italic', 'underline', 'strikethrough', '|',
'justifyleft', 'justifycenter', 'justifyright', 'justifyfull', '|',
'insertorderedlist', 'insertunorderedlist', 'indent', 'outdent', 'subscript', 'superscript', 'lineheight', '|',
'removeformat', 'clearhtml', 'quickformat', 'image', 'table', 'hr', 'link', 'unlink'
],
imageTabIndex : 1, //点击上传图片按钮默认显示标签,1为本地上传,默认为0网络图片
resizeType:0,//0不能拉伸
//fullscreenMode: true,//全屏显示
allowImageUpload: true//true时显示本地上传
});
});
//设置内容
function setContent(content) {
if (editor) {
editor.html(content);
}
}
//获取内容
function getContent() {
if (editor) {
return editor.html();
}
} </script>
</head>
<body style="margin:0;overflow:hidden;">
<textarea id="content" style="display: block;width:99.8%;height:510px;visibility:hidden;"></textarea>
</body>
</html>

  

第三步 C# WinForm调用HTML文件

namespace 命名空间
{
[ComVisible(true)]//这句很重要
public partial class Form1 : Form
{
            this.webBrowser1.Url = new System.Uri(Application.StartupPath + "\\kindeditor\\WinForm.html", System.UriKind.Absolute);
this.webBrowser1.ObjectForScripting = this;

  

设置内容:

 this.webBrowser1.Document.InvokeScript("setContent", new object[] { body });

  

获取内容:

 string body = webBrowser1.Document.InvokeScript("getContent").ToString();//

  

上面两个方法实际上是调用了WinForm.Html文件里面的方法

 //设置内容
function setContent(content) {
if (editor) {
editor.html(content);
}
}
//获取内容
function getContent() {
if (editor) {
return editor.html();
}
}

  

常见报错处理:

如果不加 [ComVisible(true)] 会报错。

C# WinForm 富文本编辑器 用kindeditor实现本地图片只选取不上传到编辑器的更多相关文章

  1. Selenium常用API用法示例集----下拉框、文本域及富文本框、弹窗、JS、frame、文件上传和下载

    元素识别方法.一组元素定位.鼠标操作.多窗口处理.下拉框.文本域及富文本框.弹窗.JS.frame.文件上传和下载 元素识别方法: driver.find_element_by_id() driver ...

  2. Kindeditor+web.py+SAE Storage 实现文件上传 - 开源中国社区

    Kindeditor+web.py+SAE Storage 实现文件上传 - 开源中国社区 Kindeditor+web.py+SAE Storage 实现文件上传

  3. PHP UEditor富文本编辑器 显示 后端配置项没有正常加载,上传插件不能正常使用

    UEditor是由百度web前端研发部开发所见即所得富文本web编辑器,具有轻量,可定制,注重用户体验等特点,开源基于MIT协议,允许自由使用和修改代码... 问题描述 我的编辑器在本地测试的时候没问 ...

  4. 让富文本编辑器支持复制doc中多张图片直接粘贴上传

    Chrome+IE默认支持粘贴剪切板中的图片,但是我要发布的文章存在word里面,图片多达数十张,我总不能一张一张复制吧? 我希望打开文档doc直接复制粘贴到富文本编辑器,直接发布 感觉这个似乎很困难 ...

  5. UILabel富文本 段落格式以及UILabel添加图片

    之前文本整理有一点乱,这边重新整理一下,下面是效果图,一共两个UILabel, 富文本整理: /*NSForegroundColorAttributeName设置字体颜色,对象UIColor; NSP ...

  6. vue v-html 富文本解析 空格,换行,图片大小问题

    1.保留空格,换行属性 //保留换行空格问题 white-space: pre-wrap; 2.超出部分,强制换行,一般用于数字 //富文本换行 word-wrap: break-word; tabl ...

  7. 富文本粘贴word文档内容图片处理

    公司做的项目要用到文本上传功能. 网上找了很久,大部分都有一些不成熟的问题,终于让我找到了一个成熟的项目. 下面就来看看: 1.打开工程: 对于文档的上传我们需要知道这个项目是否符合我们的初衷. 运行 ...

  8. asp.net 百度编辑器 UEditor 上传图片 图片上传配置 编辑器配置 网络连接错误,请检查配置后重试

    1.配置ueditor/editor_config.js文件,将 //图片上传配置区 ,imageUrl:URL+"net/imageUp.ashx" //图片上传提交地址 ,im ...

  9. 解决:百度编辑器UEditor,怎么将图片保存到图片服务器,或者上传到ftp服务器的问题(如果你正在用UE,这篇文章值得你看下)

    在使用百度编辑器ueditor的时候,怎么将图片保存到另一个服务器,或者上传到ftp服务器?这个问题,估计很多使用UE的人会遇到.而且我百度过,没有找到这个问题的解决方案.那么:本篇文章就很适合你了. ...

随机推荐

  1. 通过漫画轻松掌握HDFS工作原理

  2. elementUI-事件绑定Bug

    刚开始使用elementUI的,慢慢的摸索.今天在绑定click事件的时候,在给el-某标签绑定.然后事件失效了.我就很纳闷,这怎么可能失效呢,当我给它的自己元素嵌套了一层div的时候,仍可是使用所以 ...

  3. python web开发-flask中sqlalchemy的使用

    SqlAlchemy是一个python的ORM框架. 在flask中有一个flask-sqlalchemy的扩展,使用起来很方便. 1.       创建一个sqlalchemy的Model模块 创建 ...

  4. Jmeter 前置处理器 BeanShell_PreProcessor 适用思考

    首先摘抄一段官方文档的话: Before invoking the script, some variables are set up in the BeanShell interpreter: lo ...

  5. 多目标跟踪(MOT)评测标准

    MOT16是多目标跟踪领域非常有名的评测数据集,Ref 1详细阐述了这个数据集的组成以及评测标准(及其评测代码),Ref 2详细地解释了许多标准的由来和考虑,本部分主要介绍MOT任务中常用的评测标准. ...

  6. Spark ML源码分析之四 树

            之前我们讲过,在Spark ML中所有的机器学习模型都是以参数作为划分的,树相关的参数定义在treeParams.scala这个文件中,这里构建一个关于树的体系结构.首先,以Decis ...

  7. Beta Scrum Day 7

    听说

  8. 简单的C语言编译器--概述

      在学习了编译原理的相关知识后,逐渐的掌握一个编译器的结构.作用和实现方法.同时,希望自己在不断的努力下写出一个简单的C语言编译器. 实现步骤 词法分析器:将C语言测试代码分解成一个一个的词法单元: ...

  9. QTableView

    QTableView常用于实现数据的表格显示.下面我们如何按步骤实现学生信息表格: 一 添加表头 //准备数据模型     QStandardItemModel *student_model = ne ...

  10. HTML5文件操作API

    HTML5文件操作API       一.文件操作API 在之前我们操作本地文件都是使用flash.silverlight或者第三方的activeX插件等技术,由于使用了这些技术后就很难进行跨平台.或 ...