LineBreak无法在GridView的绑定中工作

时间:2015-07-31 10:36:25

标签: c# asp.net string sql-server-2008 line-breaks

在ASP.NET应用程序中,我有多行字符串值,如下所示。

代码:

string remarks="Line 1 \n";
remarks+=remarks+"\n Line 2 \n";

Console.Writeln(remarks);

输出:

Line 1

Line 2

现在我想要字符串值的相同输出,当我将它们插入到SQL Server上的表中时,将它们检索回来然后通过绑定将它们呈现在GridView中。

但是从数据库中检索后,我只是将整个字符串放在一行中(换行符不起作用):

Line 1Line 2

我尝试了Environement.NewLineStringBuilder,但我始终将服务器的输出视为一行。

我做错了什么?

2 个答案:

答案 0 :(得分:1)

在行绑定事件

上将“\ n”替换为“
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            for (int i = 0; i < e.Row.Cells.Count; i++)
            {
                e.Row.Cells[i].Text = e.Row.Cells[i].Text.Replace("\\n", "<br/>");
            }
        }

答案 1 :(得分:0)

SQL将保持插入的换行符。

默认情况下,Linebreaks不会出现在DataGridView对象上。 尝试:

dataGridView1.Columns[0].DefaultCellStyle.WrapMode = DataGridViewTriState.True;