给CuteEditor5增加了高亮代码显示功能(C#版)
2009-04-16 16:45
776 查看
原文:/article/4670950.html
CuteEditor在很多网站上都有介绍了,是一款超级Cool的web在线编辑器,下载地址用google找一下就能找到,就不提供了,但是安装方法还是要说一下,因本次是使用vs2005。
我们在vs2005里面新建个web site吧,把CuteEditor.dll(主控件)、CuteEditor.lic(许可证)、CuteEditor.ImageEditor.dll(因为5.0增加了个EditorImage的功能)、NetSpell.SpellChecker.dll(拷这个的原因是默认打开拼写检查)这几个文件拷贝到web site的bin目录下,刷新bin目录(不像vs2003需要引用dll),同时我们也要把解压缩后的CuteSoft_Client目录全部拷贝到应用程序的根目录下。然后把CuteEditor添加到工具面板.我们在工具面板里面右键选择"选择项",在出来的对话框里面选择"游览",找到CuteEditor.dll,一路确定就可以了。
我们再添加个CuteEditor.aspx,把工具面板里面的Editor拖到页面上来,这时你就可以运行你的程序使用CuteEditor了
上面的只是个最简单的安装,还有比如控制CueEditor的显示,已经安全性和那个什么上传的啊,还有控制用户上传的目录啊,或者给每个用户建个他们自己的图片目录啊,还必须要另外设置,这些暂时先略过吧,您可以自己看一下说明进行设置,这里不多说了。我们现在要开始要给CuteEditor增加高亮代码显示功能,俺这里使用的是CodeHighlighter控件,您可以到http://www.codehighlighter.com/下载最新版,最新版同时支持.net1和.net2,因为使用的是vs2005,俺就使用了最新版,现在我们先来给CuteEditor增加一个按钮和打开插入高亮代码的页面代码。
CuteEditor.aspx代码
Code
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
namespace testCuteeditor
{
public partial class InsertCode : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
ActiproSoftware.CodeHighlighter.CodeHighlighterConfiguration config = (ActiproSoftware.CodeHighlighter.CodeHighlighterConfiguration)System.Configuration.ConfigurationManager.GetSection("codeHighlighter");
foreach (string key in config.LanguageConfigs.Keys)
{
LanguageDropDownList.Items.Add(key);
}
}
}
protected void HighlightButton_Click(object sender, EventArgs e)
{
CodeHighlighter1.Text = CodeTextBox.Text;
CodeHighlighter1.OutliningEnabled = true;
CodeHighlighter1.LanguageKey = LanguageDropDownList.SelectedValue;
CodeHighlighter1.OutliningEnabled = OutliningEnabledCheckBox.Checked;
CodeHighlighter1.LineNumberMarginVisible = LineNumberMarginVisibleCheckBox.Checked;
}
protected void CodeHighlighter1_PostRender(object sender, EventArgs e)
{
if (IsPostBack)
{
string html = CodeHighlighter1.Output;
html = html.Replace("\r\n", "<br />");
System.Text.StringBuilder htmlsb = new System.Text.StringBuilder(html);
htmlsb.Replace("\\", "\\\\");
htmlsb.Replace("'", "\\\'");
html = htmlsb.ToString();
string divstr= "<div style=\\'BORDER-RIGHT: windowtext 0.5pt solid;PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 0.5pt solid; PADDING-LEFT: 5.4pt; BACKGROUND: #e6e6e6; PADDING-BOTTOM: 4px;PADDING-TOP: 4px;BORDER-LEFT: windowtext 0.5pt solid;WIDTH: 98%; BORDER-BOTTOM: windowtext 0.5pt solid;word-break:break-all\\'>";
html = divstr + html + "</div>";
System.Text.StringBuilder sb = new System.Text.StringBuilder();
sb.Append("<");
sb.Append("script");
sb.Append(">");
sb.Append("var editor=window.dialogArguments;editor.ExecCommand('PasteHTML',false,'" + html + "');window.close();");
sb.Append("<");
sb.Append("/");
sb.Append("script");
sb.Append(">");
ScriptOutPut.InnerHtml = sb.ToString();
}
}
}
}
CuteEditor在很多网站上都有介绍了,是一款超级Cool的web在线编辑器,下载地址用google找一下就能找到,就不提供了,但是安装方法还是要说一下,因本次是使用vs2005。
我们在vs2005里面新建个web site吧,把CuteEditor.dll(主控件)、CuteEditor.lic(许可证)、CuteEditor.ImageEditor.dll(因为5.0增加了个EditorImage的功能)、NetSpell.SpellChecker.dll(拷这个的原因是默认打开拼写检查)这几个文件拷贝到web site的bin目录下,刷新bin目录(不像vs2003需要引用dll),同时我们也要把解压缩后的CuteSoft_Client目录全部拷贝到应用程序的根目录下。然后把CuteEditor添加到工具面板.我们在工具面板里面右键选择"选择项",在出来的对话框里面选择"游览",找到CuteEditor.dll,一路确定就可以了。
我们再添加个CuteEditor.aspx,把工具面板里面的Editor拖到页面上来,这时你就可以运行你的程序使用CuteEditor了
上面的只是个最简单的安装,还有比如控制CueEditor的显示,已经安全性和那个什么上传的啊,还有控制用户上传的目录啊,或者给每个用户建个他们自己的图片目录啊,还必须要另外设置,这些暂时先略过吧,您可以自己看一下说明进行设置,这里不多说了。我们现在要开始要给CuteEditor增加高亮代码显示功能,俺这里使用的是CodeHighlighter控件,您可以到http://www.codehighlighter.com/下载最新版,最新版同时支持.net1和.net2,因为使用的是vs2005,俺就使用了最新版,现在我们先来给CuteEditor增加一个按钮和打开插入高亮代码的页面代码。
CuteEditor.aspx代码
Code
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
namespace testCuteeditor
{
public partial class InsertCode : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
ActiproSoftware.CodeHighlighter.CodeHighlighterConfiguration config = (ActiproSoftware.CodeHighlighter.CodeHighlighterConfiguration)System.Configuration.ConfigurationManager.GetSection("codeHighlighter");
foreach (string key in config.LanguageConfigs.Keys)
{
LanguageDropDownList.Items.Add(key);
}
}
}
protected void HighlightButton_Click(object sender, EventArgs e)
{
CodeHighlighter1.Text = CodeTextBox.Text;
CodeHighlighter1.OutliningEnabled = true;
CodeHighlighter1.LanguageKey = LanguageDropDownList.SelectedValue;
CodeHighlighter1.OutliningEnabled = OutliningEnabledCheckBox.Checked;
CodeHighlighter1.LineNumberMarginVisible = LineNumberMarginVisibleCheckBox.Checked;
}
protected void CodeHighlighter1_PostRender(object sender, EventArgs e)
{
if (IsPostBack)
{
string html = CodeHighlighter1.Output;
html = html.Replace("\r\n", "<br />");
System.Text.StringBuilder htmlsb = new System.Text.StringBuilder(html);
htmlsb.Replace("\\", "\\\\");
htmlsb.Replace("'", "\\\'");
html = htmlsb.ToString();
string divstr= "<div style=\\'BORDER-RIGHT: windowtext 0.5pt solid;PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 0.5pt solid; PADDING-LEFT: 5.4pt; BACKGROUND: #e6e6e6; PADDING-BOTTOM: 4px;PADDING-TOP: 4px;BORDER-LEFT: windowtext 0.5pt solid;WIDTH: 98%; BORDER-BOTTOM: windowtext 0.5pt solid;word-break:break-all\\'>";
html = divstr + html + "</div>";
System.Text.StringBuilder sb = new System.Text.StringBuilder();
sb.Append("<");
sb.Append("script");
sb.Append(">");
sb.Append("var editor=window.dialogArguments;editor.ExecCommand('PasteHTML',false,'" + html + "');window.close();");
sb.Append("<");
sb.Append("/");
sb.Append("script");
sb.Append(">");
ScriptOutPut.InnerHtml = sb.ToString();
}
}
}
}
相关文章推荐
- 给CuteEditor5增加了高亮代码显示功能(C#版)
- 给CuteEditor5增加了高亮代码显示功能(C#版)
- [装载]给CuteEditor5增加了高亮代码显示功能(C#版)
- 给CuteEditor5增加了高亮代码显示功能
- 给CuteEditor5增加了高亮代码显示功能
- 给CuteEditor5增加了高亮代码显示功能(C#版)
- 给CuteEditor5增加了高亮代码显示功能(C#版)
- C#+AE实现类似IDentify功能及对高亮显示相
- xml学习(三)---利用xml文件实现数据岛功能(网页显示xml文件中的内容免C#代码操作xml文件)
- ckeditor---插入代码功能并高亮显示,结合syntaxhighlighter_2.1
- 博客园_插入代码(推荐)_按钮功能实现_代码高亮显示
- C#+AE实现类似IDentify功能及对高亮显示相关接口的总结
- WordPress搜索结果中增加关键词高亮显示代码
- Delphi&C#代码模拟“显示桌面”的功能
- 最全Pycharm教程(23)——Pycharm编辑器功能之代码高亮显示及错误提示机制
- CuteEditor6加“高亮代码显示功能” 碰到的一个问题
- 为论坛和Blog添加代码高亮显示的功能
- 关闭大纲显示,C# vs2013 编辑器左侧代码折叠功能
- Eclipse增加JavaScript插件_高亮显示_代码补全
- ckeditor添加代码插入功能及高亮显示(插件)