2016-04-26 22 views
2

如何在String Builder上添加CheckBoxList项。如何在StringBuilder上添加CheckBoxList项用于Linq

CheckBoxList cblItem = new CheckBoxList(); 
cblItem.ID = "cblItem"; 

var MainCatGroup = subCatDet.GroupBy(q => q.catCode).Select(q => new { CatName = q.Key, Items = q.ToArray() }).Select(q => new { CatName = q.CatName, Items = q.Items.OrderBy(t => t.catCode).ToArray() }).ToArray(); 
foreach (var mainCat in MainCatGroup) 
{ 
    sb.Append(string.Format("<li><a href=\"javascript:void(0)\">{0}</a>", mainCat.CatName.ToString())); 
    sb.Append(string.Format("<ul>")); 

    foreach (var item in mainCat.Items) 
    { 
     string Subcat = item.subCat.ToString(); 
     string catCode= item.catCode.ToString(); 
     sb.Append(string.Format("<li>")); 
-----> sb.Append(string.Format(cblItem.Items.Add(new ListItem("{0},{1}")), Subcat, catCode));  <---- 
     sb.Append(string.Format("</li>")) 
    } 
     litList.Text = sb.ToString(); 
    } 

那么,我该如何编辑下线?

sb.Append(string.Format(cblItem.Items.Add(new ListItem("{0},{1}")), Subcat, catCode)); 
+3

它不清楚你在问什么。 –

+0

@YacoubMassad当我使用stringbuilder在checkboxlist上添加动态项时,我有一个错误就行了。所以我不知道它的逻辑问题或其他 –

+2

但你想要做什么?请给更多的上下文。 –

回答

1

你可能想要做这样的事情,而不是:

cblItem.Items.Add(new ListItem(sb.ToString()), Subcat, catCode); 

或者更好:

cblItem.Items.Add(new ListItem(string.Format("{0},{1}", Subcat, catCode)); 

也souldn't组合命名convetions。 Subcat和MainCatGroup局部变量不应该以大写字母开头。

而且在和你也可以尝试StringFormat.AppendFormat(more details here):

sb.AppendFormat("2) {0}, {1}", var1, var2); 
+0

感谢您的信息〜 –

相关问题