0
我正在嘗試使用ListView
來生成複雜的項目列表。對於每一個項目我必須創建這樣的字符串串聯或HtmlGenericControl html控件?
<div>
<ul>
<li>foo<li>
<li>bar<li>
.... Dynamic count of <li>
<ul>
<span>Some dynamic text</span>
.. bunch of other dynamicly generated html
</div>
我的問題是什麼是更好的方式使用字符串連接這樣
StringBuilder sb = new StringBuilder();
sb.Append("<div>");
.......
sb.Append("</div>")
或使用HtmlGenericControl這樣生成html.By:
HtmlGenericControl htmlItem = new HtmlGenericControl("div");
....
using(TextWriter textWriter = new StringWriter())
using(HtmlTextWriter htmlWriter = new HtmlTextWriter(textWriter))
{
HtmlGenericControl htmlItem = null;
CreateMenuItem(menuItem, 0, null);
htmlItem.RenderControl(htmlWriter);
return textWriter.ToString();
}
'string.Format',或'StringBuilder.AppendFormat'經常在這裏很有用,比如當你有動態文本的跨度,你可以有'sb.AppendFormat( 「 {0}」,getSpanContent ());」它使大多數靜態XML在代碼中更具可讀性。如果它是多行的,你也可以使用'@「」'作爲一個多行代碼的HTML字符串,並且有很多插入數據的{}插入。 – Servy 2012-04-11 18:11:14