如何在asp.net c中使用Eval后的一些字符后断行

时间:2014-07-30 10:41:16

标签: c# asp.net .net

<div class="project-description" style="margin: 28px 0px;">
    <p ><%#Eval("Info").ToString()%> 

    </p>

</div>

并且上面的输出是:

  

以前尝试穿西装,连衣裙,裤子或鞋子是平凡的   购买它们。个人直观地知道他们必须尝试   服装,以确保它们适合,感觉很好,并吸引他们。   难道我们不应该考虑一个家吗?它最有可能是最昂贵的   买你做的。是不是更迫切需要   &#34;尝试&#34;买之前的房子?我到底是什么意思?那   正如所说的那样,寻找一个家的地方很常见   有利于工作和学习。

现在我想在一些角色之后打破线。 我想要输出如下。:

  

以前尝试穿西装,连衣裙,裤子或鞋子是平凡的   购买它们。个人直观地知道他们必须尝试   服装,以确保它们适合,感觉很好,并吸引他们。   我们不应该考虑一个家。

     

最有可能是你付出的最高价。不是吗?   更重要的是&#34;尝试&#34;买之前的房子?   究竟是什么意思。

     

话虽这么说,但在其他地方寻找住所很常见   有利于工作和学习。

3 个答案:

答案 0 :(得分:1)

在.CS端创建1个公共函数,例如如果你想在每次完场后打破线路。

<。>在.CS文件中

public string TrimString(string str)
{
    return str.Replace(".",".<br />");
}

.aspx文件

<%#TrimString(Eval("Info").ToString())%>

替代解决方案

<%#Eval("Info").ToString().Replace(".",".<br />") %>

如果你想添加&#34;。&#34; 50个字后然后再

<%# Eval("Info").ToString().Length>50 ? Eval("Info").ToString().Substring(0,50)+Eval("Info").ToString().Substring(51).Replace(".",".<br />") : Eval("Info").ToString() %>

答案 1 :(得分:1)

我建议您在说明中添加换行符,并将它们与换行符一起存储(如果它们尚未存在)。

然后,当您将文本输出到浏览器时,请设置容器<div>,以便使用CSS prope white-space

来粘贴到换行符
div.project-description { white-space: pre-wrap; }

答案 2 :(得分:0)

如果你想在点(。)之后打破一行,那么使用下面的代码

<%#Eval("Info").ToString().Replace(".",".<br />")%>

它将取代&#34;。&#34;新线