我正在努力使我的文本包装在我的应用程序中。我需要发送一封包含来自一个dataTable的信息的电子邮件。我正在构建一个带有要发送的html表的字符串。我的问题是细胞中的一些信息真的很长。我需要一个解决方案,所以我可以包装它。
foreach (DataRow dr in dt.Rows)
{
sb.Append(tab + tab + tab + "<tr bgcolor='#D6D6D6'>");
foreach (DataColumn dc in dt.Columns)
{
string cellValue = dr[dc] != null ? dr[dc].ToString() : "";
sb.AppendFormat("<td text-wrap='normal'>{0}</td>" + tab, cellValue);
}
sb.AppendLine("</tr>");
}
我尝试过文本换行和自动换行,但它不起作用。如果您有任何想法,请告诉我。
你的HTML格式不好。
你可以添加一个类就是这样
<td class="myClass">....</td>
然后像这样创建一个类
.myClass{
white-space:normal;
}
或者把它放在样式标签中
<td style="text-wrap:normal;">{0}</td>"
或者<td style="white-space:normal;">{0}</td>"
如果要在网站或基于html的文档上显示文本,可以使用break-line / -row:
String text = "First row <br />Second row <br />...";
<br />
基本上是html中的新行字符\n
。
只需在表格列上添加宽度值,显然它可以解决您的问题。 :)