今天捣鼓一下那个叫 `dotnettextbox` 的东西,正好把我这折腾过程给大伙儿说说。
起初的念头
话说回来,当时手头在搞一个小的网站后台,就是那种需要用户能自己发点带格式的文章的功能。总不能让用户手敲 HTML 标签,那也太不友好。所以就想着,得找个能在网页上直接编辑,有点像 Word 那样,能加粗、能插图的编辑器。那时候 * 正火,就专门找给 .NET 用的。
寻寻觅觅
在网上搜一圈,免费的好东西不多。找来找去,就发现这个 `dotnettextbox`。看介绍说是什么所见即所得的编辑器,还支持 * 2.0 到 3.5,关键是对个人和非盈利的还免费,听起来挺对路的。当时也没多想,就它。
上手试试
先把那控件包下回来,大概是个 DLL 文件。打开我的 Visual Studio(好像还是 VS2005 或者 2008 来着,记不清),在项目里头,把这个 DLL 文件引用加上。然后,打开那个 .aspx 页面,从工具箱里找到 `dotnettextbox`,往页面上一拖。还真挺方便,一个编辑框就出来。
跑起来瞅瞅,基本的加粗、斜体、搞个列表啥的,都能用。心里还挺美,觉得这免费的玩意儿还真不赖。
遇到麻烦
用着用着,问题就来。我需要让用户能上传图片,光能打字、调格式还不够。这控件自带上传功能,但我一试,发现默认能传的文件类型、还有文件大小都有限制,不符合我的要求。
还有就是那个编辑器的工具栏,按钮有点多,有些功能我根本用不上,看着碍眼,想给它精简一下。
动手改造
没办法,只能自己动手。我记得当时好像是翻翻它的说明,或者是在下载包里找到一些配置文件。
- 改上传限制: 找到一个好像叫 `uploadconfig` 之类的配置文件,可能在它自己特定的文件夹里,比如那个叫 `system_dntb` 的目录下面。打开一看,里面果然有设置文件类型和大小的地方,照着格式改改,把图片格式加上,大小限制也放宽点。
- 改工具栏: 这个稍微麻烦点。好像也是在某个配置文件里,可以控制显示哪些按钮。得对着它的文档或者猜,把不需要的按钮配置给注释掉或者删。
记得当时还看到有人说,要是配置改不,或者想改更深层的东西,得用反编译工具去看它的代码,甚至改代码重新编译那个 DLL 文件。我当时好像没走到那一步,光改改配置就基本满足我的需求。不过也意识到,这免费控件虽然能用,但想完全随心所欲地改,还是有点门槛的。
最终效果
折腾半天,总算是把上传配置搞定,工具栏也清爽不少。部署到服务器上,用户可以在后台比较方便地编辑内容、上传图片。虽然过程有点小波折,但最终功能是实现,也算没白忙活。
回过头看
现在想想,`dotnettextbox` 在当时那个环境下,确实解决大问题,尤其是对缺钱的小项目来说,有个免费的、功能还算过得去的富文本编辑器挺不容易的。跟现在流行的那些基于 JavaScript 的编辑器比,它配置起来可能麻烦些,定制性也没那么灵活。不过作为一段实践经历,记录一下自己当时怎么一步步找到它、用到它、再到解决使用中遇到的问题,还是挺有意思的。