【问题标题】:Can I place a asp:datalist inside a repeater control and databind it?我可以在转发器控件中放置一个 asp:datalist 并对其进行数据绑定吗?
【发布时间】:2010-03-31 10:22:52
【问题描述】:

我可以在转发器控件中放置一个 asp:datalist 并在每次重复时对其进行数据绑定吗?顺便说一句,使用 VB.NET..

干杯! --琼斯

【问题讨论】:

    标签: asp.net vb.net repeater datalist


    【解决方案1】:

    步骤:
    1. 在Repeater中嵌套DataList
    2.Repeater的ItemDataBound事件期间绑定每一个重复的Datalist
    3. 如果不需要,请关闭它们的 ViewState。

    更新:

    脚本方面:

    <asp:Repeater ID="Repeater1" runat="server">
            <ItemTemplate>
                <asp:DataList ID="DataList1" runat="server">
                </asp:DataList>
            </ItemTemplate>
            </asp:Repeater>
    

    在代码中:

    Protected Sub Repeater1_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.RepeaterItemEventArgs) Handles Repeater1.ItemDataBound
            Dim DataList1 As DataList = DirectCast(e.Item.FindControl("DataList1"), DataList)
    ...Databind here ....
    
    End Sub
    

    【讨论】:

    • 您好,感谢您的回复。我该怎么做第 2 步?这就是我对中继器进行数据绑定所做的:Repeater1.DataSource = dtAssets Repeater1.DataBind() 如何访问该中继器内的控件?我试过这个: Dim DataList1 As DataList = DirectCast(Repeater1.FindControl("DataList1"), DataList) 但我收到一条错误消息:对象引用未设置为对象的实例。请帮忙! -- 琼斯
    • 对不起,新中继器,ItemDataBound 是什么?
    • 嗨,我想通了。您在 ItemDataBind 中需要它是对的。谢谢!
    • 如果你能帮助我,还有一个问题。我可以将变量传递给中继器 ItemDataBound 子吗?这将是一个绑定到中继器的变量。
    • 您可以使用 #Eval 向 UI 显示任何数据绑定元素,并且可以使用 e.item.DataItem 在服务器端访问
    猜你喜欢
    • 1970-01-01
    • 2021-12-13
    • 2016-08-26
    • 2011-03-21
    • 2018-04-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-14
    相关资源
    最近更新 更多