我在一多行文本框中输入了多段文字,存入了数据库的“Text”字段中,但在显示时,我将这个字段的内容直接赋给了一个“Label”的Text属性,发现这时候前面输入的换行符就不能起作用了,无法达到分段显示的目的。
    这个问题以前在ASP中时也遇到过,那时处理的办法是:在存入数据库前,将换行符进行替换。   请问在C#中,这个问题该怎么处理呢?

解决方案 »

  1.   

    TextBox需要设置才可以换行 mulitiLine属性设置成truelabel 好像不能换行
      

  2.   

      请问也是用:Replace(str,vbCRLF,"<br>")
      

  3.   

    你好像没明白我的意思,我的意思是在TEXTBOX中输入的多段文字中在显示的时候怎样才能按原样进行显示,而不是显示的时候所有段落都是依次显示的。这样也不利于阅读啊。
      

  4.   

    可以显示的时候
    Lable1.Text=dr["text"].ToString().Replace(@"\r\n","<br/>");
      

  5.   

    或者Lable1.Text="<pre>"+dr["text"].ToString()+"</pre>";
      

  6.   

    不好意思,再问一下,replace函数是在哪个命名空间下啊,我添加:using System.String;系统说没有这个命名空间。
        
       我是这样使用的:
       string newstr=Replace(str,"\r\n","<br">)   但提示说:当前上下文中不存在名称“Replace”
      

  7.   

    面向对象的写法是:str.Replace("\r\n"," <br>")