【发布时间】:2012-08-23 12:28:58
【问题描述】:
我在页面中有一个转发器控件,在转发器控件中有一个 gridview。我想绑定gridview。但我不能。当我运行它时,我的页面是空的。并且 viewsource 也是空的。 这是我的代码:
<asp:Repeater ID="DataRepeater" runat="server"
onitemdatabound="DataRepeater_ItemDataBound">
<ItemTemplate>
<asp:GridView ID="DataGridView" runat="server" AutoGenerateColumns="false">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<%#Eval("FirstName") %>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="FirstNameTextbox" runat="server"></asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</ItemTemplate>
</asp:Repeater>
protected void DataRepeater_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
DataCodeClass dc = new DataCodeClass();
if (e.Item.ItemType == ListItemType.Item)
{
GridView gvID = e.Item.FindControl("DataGridView") as GridView;
dc.GetData(gvID);
gvID.DataBind();
}
}
public void GetData(GridView gv)
{
var get_data = from a in dataContext.GetTable<PersonalDetailTable>() select a;
gv.DataSource = get_data;
}
【问题讨论】:
-
中继绑定码在哪里?
-
我不知道,我在中继器中绑定了一个网格视图。
-
你必须有一些代码绑定转发器 - 如果没有,那么什么都不会显示,这是正确的行为。为什么你有一个中继器开始?你想做什么?
-
如果您在Repeater中有一个GridView,那么您可能有两个级别的数据源,例如学生列表,并且每个学生都有一个成绩列表。是这样吗?
-
我只是在练习使用中继器控件。没什么特别的。只是想在gridview中绑定数据。您的帮助将非常可观! :)
标签: asp.net data-binding gridview asprepeater