2

我遇到了 ASP.NET 的问题。我正在使用 C#。

使用 SQL 查询,我有数据库中的行数,我需要编写相同数量的 div 标签来显示结果。

这是代码

count 是一个包含行数的变量。

项目是一个列表

for (int i = 0; i < count; i++)
{
    form1.Controls.Add(new Literal() { 
         ID = "ltr" + i,

         Text = "<div class= 'container' >Name = " + Projects[i].Name + " ;</div>" });
}

但是有一个问题,我必须将这些 div 放入另一个 ID = Container 的 div 中。

这样字面量控件不会被放入 div#Container

如何将 For 结果放入 div?

4

2 回答 2

10

除了Literal用于呈现文本而不是 html 标记的控制,您可以使用以下任一方式HtmlGenericControl

HtmlGenericControl div = new HtmlGenericControl();
div.ID = "div" + i;
div.TagName = "div";
div.Attributes["class"] = "container";
div.InnerText = string.Format("Name = {0} ;", Projects[i].Name);
form1.Controls.Add(div);

Panel控件,它被渲染成 div,Literal里面有:

Panel div = new Panel();
div.ID = "panel" + i;
div.CssClass = "container";    
div.Controls.Add(new Literal{Text = string.Format("Name = {0} ;", Projects[i].Name)});    
form1.Controls.Add(div);
于 2013-06-02T17:13:22.000 回答
1

相反,你应该使用中继器控制,它会很容易使用。

脚步

  1. 取一个 SqlDatasource。
  2. 采取中继器控制。
  3. 将其数据源设置为 .
  4. 根据需要设计 itemTemplate。
  5. 完毕..!

如果有任何疑问,请点击此链接

于 2013-06-02T17:35:34.490 回答