2

ページに表示するには、多数の GridView が必要です。dataListと呼ばれるセクション オブジェクトのリストのリストがあり、 dataListの各リストは GridViews の 1 つにバインドする必要があります。

私はこれを持っています

List<List<Section>> dataList;
foreach (List<Section> sectionList in dataList)
{
    GridView gv = new GridView();
    gv.DataSource = sectionList
    gv.DataBind();
}

そして私のマークアップ:

 <asp:GridView runat="server" ID="gv" AutoGenerateColumns="true"/>

しかし、ページを読み込んでも何も見えません。作成したすべての GridView を表示するにはどうすればよいですか? 各 GridView を dataList のリストに正常にバインドした foreach ループはありますか? ありがとう

4

1 に答える 1

2

Gridview マークアップを削除し、PlaceHolder コントロールを使用して動的 Gridviews を追加します。これを試してください。

<asp:PlaceHolder ID="PlaceHolder1" runat="server"/>

C#で

int i = 1;
foreach (List<Section> sectionList in dataList)
{
    GridView gv = new GridView();
    //generate dynamic id        
    gv.Id = "gv" + i; i++;
    gv.AutoGenerateColumns="true";
    gv.DataSource = sectionList
    gv.DataBind();
    PlaceHolder1.Controls.Add(gv);
}
于 2013-03-17T17:23:39.093 に答える