想要实现:
    在TextBox里录入内容,包含简单的格式控制(换行,段落),存入数据库,然后读取出来后在Label上能像预期的那样显示
这个问题在C#被提过很多次了,搜索出来的我看不出头绪,还请各位英雄提点一二

解决方案 »

  1.   

    嗯,等等,你说的是Windows窗体程序,还是网页?
      

  2.   

    在保存时对其中的控制符号进行替换成HTML标记。
      

  3.   

    Replace(Chr(13) & Chr(10), "<BR>")
    Replace(" ", "&nbsp;")将回车换行符号和空格替换掉,
    这是vb的,c#的回去换行符号可能不一样,你自己查查相关资料
      

  4.   

    我想过用楼上的办法,
    Replace(" ", "&nbsp;")没有达到预期的效果啊,好像检索不到“ ”
      

  5.   

    public string EnCode(string content)
    {
        string str1=content.Replace("<","&lt;");
    string str2=str1.Replace(">","&gt;");
    string str3=str2.Replace("'","''");
    string str4=str3.Replace(" ","&nbsp;");
    string str5=str4.Replace("\r\n","<br>");
    return str5;
                
    }
    public string UnCode(string content)
    {
    string str1=content.Replace("&lt;","<");
    string str2=str1.Replace("&gt;",">");
    string str4=str2.Replace("&nbsp;"," ");
    string str5=str4.Replace("<br>","\r\n");
    return str5;
    }
      

  6.   

    好像TextBox录入的时候不会有<br>之类的生成啊,我用过replace但没有替换掉预想的空格什么的
      

  7.   

    兄弟你怎么还问啊,我记得好象回答过,你显示的时候也用textBox只是强制换行,设一下样式就行了。
    下面是显示时候的
    <TABLE class="fixed" cellSpacing="0" cellPadding="0" width="100%" border="0">
      <TR>
        <TD>
    <asp:TextBox id="txtContent" MaxLength="1000" CssClass="view" TextMode="MultiLine" Runat="server" ReadOnly="True"></asp:TextBox>
        </TD>
     </TR>
    </TABLE>
    这里做了两个样式,一个是table的class="fixed"就是限制把textBox撑大,CssClass="view"使显示具有label的外观