Asp.net 替换<;br>;asp多行文本框中的标记

Asp.net 替换<;br>;asp多行文本框中的标记,asp.net,Asp.net,我正在数据网格中使用textbox。在将数据保存到数据库中之前,我使用以下脚本将换行符替换为: description.Replace(Environment.NewLine, "<br>") data.description = ((TextBox)dgrid.Items[i].FindControl("description")).Text; data.description = data.description.Replace("<br>", "\r\n");

我正在数据网格中使用textbox。在将数据保存到数据库中之前,我使用以下脚本将换行符替换为

description.Replace(Environment.NewLine, "<br>")
data.description = ((TextBox)dgrid.Items[i].FindControl("description")).Text;
data.description = data.description.Replace("<br>", "\r\n");
说明.替换(Environment.NewLine,
工作正常,它正在用

替换换行符。然后我需要再次将数据提取到文本框中进行编辑。我尝试使用以下脚本将

替换为换行符:

description.Replace(Environment.NewLine, "<br>")
data.description = ((TextBox)dgrid.Items[i].FindControl("description")).Text;
data.description = data.description.Replace("<br>", "\r\n");
data.description=((TextBox)dgrid.Items[i].FindControl(“description”).Text;
data.description=data.description.Replace(“
”,“\r\n”);

但它不起作用,你们有什么解决方案吗?

你们没有将文本值设置回原来的值,而是在更改数据。说明。试着把它改成

Textbox txt = ((TextBox)dgrid.Items[i].FindControl("description"));
txt.Text = txt.Text.Replace("<br>", Environment.NewLine);
Textbox txt=((Textbox)dgrid.Items[i].FindControl(“description”);
txt.Text=txt.Text.Replace(“
”,Environment.NewLine);

可能有更好的地方可以这样做,但如果没有看到所有东西,很难说。

是的。我知道看不到完整的剧本很难,但这太让人不知所措了。问题:我尝试了
((TextBox)dgrid.Items[i].FindControl(“description”)但它返回了一个错误。不带
.Text
可以吗?((TextBox)dgrid.Items[i].FindControl(“description”)应该会将TextBox控件本身返回给您。如果不是,那么网格就找不到该控件。我试图缩短它,但您可以尝试字符串s=((TextBox)dgrid.Items[I].FindControl(“description”).Text;((TextBox)dgrid.Items[i].FindControl(“说明”)。Text=s.Replace(“
”,“\r\n”);建议您使用Environment.NewLine而不是“\r\n”。我终于解决了这个问题。thx Doozer Blake说到点子上了。同样适用于@rickschott!