我在 ASP 中声明了一个 gridview,如下所示:
<asp:GridView ID="GV_Sample" runat="server" AutoGenerateColumns="False" Visible="false" CssClass="tabela" style="margin: 0 auto;"
UseAccessibleHeader="true" >
<Columns>
<asp:TemplateField HeaderText="Nome" HeaderStyle-CssClass="col1 column">
<HeaderTemplate>
Nome
</HeaderTemplate>
<ItemStyle CssClass="col1 column" />
<ItemTemplate>
<p><asp:Label ID="lbl_micro" runat="server" Text='<%# Bind("Descricao") %>' /></p>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Curso" HeaderStyle-CssClass="col2 column">
<HeaderTemplate>
Curso
</HeaderTemplate>
<ItemStyle CssClass="col2 column" />
<ItemTemplate>
<asp:HyperLink ID="link_micro" runat="server" Text='<%# "<span>"+ Eval("id") + "</span>" %>' NavigateUrl='<%# returnRawUrl() + "&id=" + Eval("id") %>' CssClass="linkBlock button-cursos" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
在后面的代码中,我想使用 GV_Sample 的所有属性生成多个 Gridview,并且只需更改 DataSource:
for(int i=0; i<array.Count; i++)
{
GridView gvr = GV_Sample;
gvr.id="myGV_"+i;
SqlDosCursos.SelectParameters["ID"].DefaultValue = array[i];
gvr.DataSourceID = "SqlDosCursos";
gvr.DataBind();
myPlaceHolder.Controls.Add(gvr);
}
问题只是我在占位符中插入 GridView 的最后一个循环,应该插入的所有其他人都不存在。我该如何解决这个问题?
谢谢!