在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.NewLine
和StringBuilder
,但我始终将服务器的输出视为一行。
我做错了什么?
答案 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;