我想绑定在转发器内部的gridview。我的代码是
<asp:Repeater ID="rep_UnAssignComps" runat="server">
<ItemTemplate>
<asp:GridView ID="rep_DataSimilarToBacthid" runat="server" Style="text-align: center;
width: 375px;" AutoGenerateColumns="false">
<Columns>
<asp:BoundField HeaderText="Test" DataField="Test" />
</Columns>
</asp:GridView>
</ItemTemplate>
</asp:Repeater>
答案 0 :(得分:6)
你必须触发转发器的ItemDataBound事件。您必须在其中找到gridview,然后将其绑定如下: -
If e.Item.ItemType = ListItemType.Item OrElse e.Item.ItemType = ListItemType.AlternatingItem Then
Dim grd As GridView = TryCast(e.Item.FindControl("rep_DataSimilarToBacthid"), GridView)
grd.DataSource = dt
grd.DataBind()
end if
答案 1 :(得分:5)
如果您的实体whitch与重复有关,则必须有数据源(例如实体列表),只需使用此属性指定DataSource
的{{1}}。
GridView
其中<asp:GridView ID="rep_DataSimilarToBacthid" runat="server" Style="text-align: center;
width: 375px;" AutoGenerateColumns="false" DataSource='<%# Eval("GridDataSource") %>'>
是项目集合。
您还可以定义方法,该方法将在代码隐藏处指定数据源并将其命名为:
<强> Page.aspx 强>
GridDataSource
<强> CodeBehind.cs 强>
<asp:GridView ID="rep_DataSimilarToBacthid" runat="server" Style="text-align: center;
width: 375px;" AutoGenerateColumns="false" DataSource='<%# GetGridViewData(Container.DataItem) %>'>
另外,请查看帖子:
Binding gridview inside a repeater
Adding Gridview nested in Repeater in ASP.NET 2.0
Repeater within Gridview in C# ASP.NET 2.0 - 您的案例中的概念相同