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

LiteralHTMLタグではなくテキストをレンダリングするように設計されたコントロールの代わりに、次のいずれかを使用でき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);

またはPaneldiv にレンダリングされるコントロールで、その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 に答える