小弟是刚刚在学ASP.NET现在在做后台管理这块,这个页面有个DataGrid控件,从数据库里绑定了两个字段,一个编号,一个文章内容,旁边还有个编辑项,当点编辑项时,把当前项的编号赋给TextBox1.Text,文章内容赋给TextBox2.Text,现在的问题是,我在编辑TextBox2.Text时,要实现可以给TextBox2.Text里的字体改变颜色,大小,等等,就像office里的EXCL表格里的给字体加大加粗一样的功能.  
           望各位大大指教,说的详细点,这个功能的名词叫什么,小弟实在不知道,在线等,解决立即给分,一定说的详细,小弟有的地方实在是不大明白,最好有全代码

解决方案 »

  1.   

    用javascript就可以
    <SCRIPT LANGUAGE="JavaScript"> 
    <!-- 
    function changeSize(obj){ 
    document.all.modes.style.fontSize = obj.value; 
    } function changeFont(obj){ 
    document.all.modes.style.fontFamily = obj.value; 

    //--> 
    </SCRIPT> 
    <select name="select" onChange="changeFont(this)"> 
    <option value="黑体">黑体</option> 
    <option value="宋体" selected>宋体</option> 
    </select> 
    <select name="select2" onChange="changeSize(this)"> 
    <option value="9">五号</option> 
    <option value="12" selected>四号</option> 
    </select> 
    <textarea name="modes" cols="52" rows="6" style="width: 500px;height: 300px"></textarea>这是别人给我的例子,简单点,希望可以给你点帮助
      

  2.   

    使用freetextbox:http://freetextbox.com/default.aspx
      

  3.   

    用FREETEXTBOX是比较简单的解决方法,但配置要麻烦一些。
      

  4.   

    你可以使用FreeTextBox,或者FCKEditor,或者其它一些编辑器,一般来说叫“文本编辑器”下面以FCKeditor V2.3使用方法为例做说明:
    一、准备工作  首先下载最新版的FCKeditor V2.3,下载地址:http://prdownloads.sourceforge.net/fckeditor/FCKeditor_2.3.zip?download;这个压缩包里并不包含ASP.NET要用到的DLL控件,所以还要下载另外一个压缩包,下载地址:http://sourceforge.net/project/showfiles.php?group_id=75348&package_id=137125。把第一个文件解压到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文件夹外的另两个文件夹直接删除,如果想用别的,那就看你自己的喜好了,不要上传文件的话把filemanager也删除算了。
      至此,文件精简完毕,由原来的2.55M变成现在的689K了。接着修改设置。三、修改设置  打开位于根目录的fckconfig.js文件。
      FCKConfig.SkinPath = FCKConfig.BasePath + 'skins/default/' ;这行是设置皮肤的,如果精简时保留了silver,就把路径改成skins/silver,默认就不用管它了;
      FCKConfig.DefaultLanguage = 'en' ;设置默认语言,把en改成zh-cn,即简体中文;
      FCKConfig.TabSpaces = 0;如果在编辑过程中要用到TAB键,就把0改成1;
      因为FCKeditor默认是ASP的,所以要把它换成ASP.NET。把ASP跟其它被注释掉的代码删掉,用ASP.NET来代替。例如:
    var _FileBrowserLanguage    = 'aspx' 
    var _QuickUploadLanguage    = 'aspx'
    余下的代码都按照以上操作,删掉其它WEB语言,只保留ASP.NET。也可以点这里下载我精简过的文件,注意:只适用于ASP.NET,其他语言勿下!建议先解压到别的目录,再复制到WEB目录相对应的位置,以免造成文件丢失。
      改完后保存,FCKeditor已经完全支持ASP.NET了。当然还有一些安全问题,只要修改相应的toolbar,鼠标右键菜单等等,因为我的后台不面对前台用户的,即没有留言本和日记回复,所以略过这些步骤。下一步是打开VS.NET,在ASP.NET页面中加入FCKeditor。四、ASP.NET中的应用  打开项目的“资源管理器”,添加“FredCK.FCKeditorV2”引用。
      打开添加文章、管理文章相对应的文件以修改其中的内容。下面以“添加文章”为例。切换到“HTML”界面,添加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>
    id可以自己命名,自己喜欢易记就行。如果程序中有检测输入是否为空的话,那么就不再是content.Text了,而是content.Value。
      至此,文件修改完毕。所有代码如下:
     程序代码
    <%@ Page language="c#" Codebehind="AdminFileAdd.aspx.cs" AutoEventWireup="false" Inherits="MyBlog.Admin.AdminFileAdd" validateRequest=false%>
    <%@ Register TagPrefix="FCKeditorV2" Namespace="FredCK.FCKeditorV2" Assembly="FredCK.FCKeditorV2" %>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
    <HTML>
    <HEAD>
    <title>AdminFileAdd</title>
    <meta content="Microsoft Visual Studio .NET 7.1" name="GENERATOR">
    <meta content="C#" name="CODE_LANGUAGE">
    <meta content="JavaScript" name="vs_defaultClientScript">
    <meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
    <LINK href="admin.css" type="text/css" rel="stylesheet">
    </HEAD>
    <body class="right">
    <form id="Form1" method="post" runat="server">
    <div>添加文章</div>
    <div class="main">
    <ul>
    <li>
    标题:<asp:textbox id="title" runat="server" MaxLength="50" Width="250px"></asp:textbox>
    <li>
    栏目:<asp:dropdownlist id="m" runat="server" AutoPostBack="True"></asp:dropdownlist>
    <li>
    <FCKeditorV2:FCKeditor id="content" runat="server"></FCKeditorV2:FCKeditor>
    <li>
    <asp:button id="add" runat="server" Text="提 交"></asp:button>
    </li>
    </ul>
    </div>
    </form>
    </body>
    </HTML>
      

  5.   

    第三方控件FreeTextBox
    引用下 !!OK!!
    方便.........
      

  6.   

    感谢大大KidYang(),你说的真的很详细,不过现在修改过的内容(如给字体加上颜色)不能插入数据库了,怎么办啊?
      

  7.   

    用编辑器,例如FCKeditor,可以插入数据库的
      

  8.   

    我晕~
    你给你的<EditItemTemplate>里的控件设定你想要的样式不就行了吗?
    <asp:TemplateColumn>
    <HeaderTemplate>
    <b>NAME</b>
    </HeaderTemplate>
    <ItemTemplate>
    <asp:Label Height="20px" width="250px" Text='<%# DataBinder.Eval(Container.DataItem, "ProjectName").ToString().Trim() %>' runat="server" ID="Lab_Pro_Name"/>
    </ItemTemplate>
    <EditItemTemplate>
    <asp:TextBox id="Txt_Pro_Name" Text='<%# DataBinder.Eval(Container.DataItem, "ProjectName").ToString().Trim() %>' runat="server" Width="250px" style="ime-mode:active" MaxLength="50" ForeColor=red Font-Bold=True/>
    </EditItemTemplate>
    </asp:TemplateColumn>
      

  9.   


    该空间提供了读取HTML 代码 你吧HTML 代码存进去就OK 了