(转载+部分原创)FCK控件使用心得(新手大本营)
准备:首先下载程序包 (1):FCKeditor.Net包 和FCKeditor_2.X.X 版本包
一、准备工作
首先下载FCKeditor V2.3.2 released,下载地址在上面。这个压缩包里并不包含.NET要用到的DLL控件,所以还要下载另外一个压缩包,下载地址在上面的控件地址里。把第一个文件解压到WEB根目录,默认文件夹名为:FCKeditor;再把第二个包解压,里面包含了源代码,如果你想自己再次开发,可以双击FredCK.FCKeditorV2.csproj文件,打开VS.NET进行修改,所用的语言是C#;不想修改的话,直接把bin\Release下面的FredCK.FCKeditorV2.DLL文件拷到WEB目录的bin下面。
二、精简文件
因为只用到ASP.NET,所以有必要精简一下文件。
进入FCKeditor文件夹,把所有“_”开头的文件和文件夹删掉,这些都是一些范例,只保留editor文件夹、fckconfig.js、fckeditor.js、fckstyles.xml、fcktemplates.xml就可以了;
进入editor文件夹,删掉“_source”文件夹,里面放的同样是源文件;
退回上一级目录进入filemanager文件夹,有browser和upload两个文件夹。进入browser\default\connectors,只保留aspx文件夹,其余的删掉;mcpuk目录亦可删除;upload也一样,只保留aspx文件夹;
退到editor再进入images文件夹,smiley里面放的是表情图标,有msn和fun两个系列,如果你想用自己的表情图标,可以把它们都删除;如果你想用这里的表情图标那就不要删了;
lang里面放的是语言包,如果只是用简体中文,那么只保留fcklanguagemanager.js、zh-cn.js两个文件就行了,建议也保留en.js(英文)、zh.js(繁体中文)两个文件,fcklanguagemanager.js是语言配置文件,有了它才能和fckconfig.js里的设置成对,对应上相应的语言文件,一定要保留!
再退出lang文件夹,进入skins文件夹,如果你想使用FCKeditor默认的奶黄色,那就把除了default文件夹外的另两个文件夹直接删除,如果想用别的,那就看你自己的喜好了。
至此,文件精简完毕,由原来的2.55M变成现在的797K了。接着修改设置。
三、修改设置
打开位于根目录的fckconfig.js文件。FCKConfig.SkinPath = FCKConfig.BasePath + 'skins/default/' ;这行是设置皮肤的,如果精简时保留了silver,就把路径改成skins/silver,默认就不用管它了;FCKConfig.DefaultLanguage = 'en' ;设置默认语言,把en改成zh-cn,即简体中文;FCKConfig.TabSpaces = 0;如果在编辑过程中要用到TAB键,就把0改成1;
在。NET中应用就把FCKCONFIG。JS中的ASP改成ASPX(默认文件浏览器语言,快速上传语言)
改完后保存,FCKeditor已经完全支持ASP.NET了。当然还有一些安全问题,只要修改相应的toolbar,鼠标右键菜单等等,因为我的后台不面对前台用户的,即没有留言本和日记回复,所以略过这些步骤。下一步是打开VS.NET,在ASP.NET页面中加入FCKeditor。
四、ASP.NET中的应用
打开项目的“资源管理器”,添加“FredCK.FCKeditorV2”引用。新建一个页面,添加FCK的引用,代码如下:
<%@ Register TagPrefix="FCKeditorV2" Namespace="FredCK.FCKeditorV2" Assembly="FredCK.FCKeditorV2" %>
并确保@ Page中的“AutoEventWireup”“validateRequest”两个值都为false,不然当你发表的文章中含有链接或是其他HTML语句时,.NET会警告你有安全隐患而出错。在form的适当位置加入FCKeditor控件,当然form一定要有“runat="server"”,代码如下:
<FCKeditorV2:FCKeditor id="content" runat="server"></FCKeditorV2:FCKeditor>
如果 插入图片会报错,请继续一下步骤:
fckeditor配置重点说明
1、目录放哪里都可以,首先配置该目录下的fckconfig.js文件,快捷方法是把asp都替换成aspx。
2、在web.config里加上
<appSettings>
<add key="FCKeditor:UserFilesPath" value="/fc/fserFiles/" />
<add key="FCKeditor:BasePath" value="/fc/FCKeditor/" />
</appSettings>
注意是:虚拟目录加fceditor的网站目录路径
3、把fckeditor的dll包引用到项目
4、最关键的一步是:在目录权限上把asp.net用户的权限给到最大
5、文件头引用命名空间
<%@ Register TagPrefix="fckeditorv2" Namespace="FredCK.FCKeditorV2" Assembly="FredCK.FCKeditorV2" %>
6、引入fckeditor
<FCKeditorV2:FCKeditor id="FCKeditor1" basePath="./FCKeditor/" runat="server"></FCKeditorV2:FCKeditor></FONT>
7、如果还不行
到fckedor的editor/filemanager/browser/connectors/aspx/connectior.aspx 的头上引用包文件中加 Theme="",如下,还有就是upload.aspx文件,到browser目录的upload文件夹中找
<%@ Page language="c#" Inherits="FredCK.FCKeditorV2.FileBrowserConnector" AutoEventWireup="false" Theme="" %>
注意:
一:解决中文问题 除了在WEB。CONFIG中写入GB2312标识 还要在
FCKeditor/editor/filemanager/browser/default/frmresourceslist.html中把方法
Function openfile 里面的 seturl(fileurl) 改成seturl(escape(fileurl));
另外把editor目录下的DIALOG下的FCK——IMAGE和FCK——FLASH等里的
<metahttp-equivXXXXXXXXcharset=utf-8> 换成GB2312
二:使用的时候注意引用FCK的样式表和JS文件否则可能显示不正常或功能不正常