How to access dynamically created items in a repeater?

Total Post:154

Points:1086
 1376  View(s)
Ratings:
Rate this:

I have a repeater:

<asp:repeater id="someID" runat="server">

   <ItemTemplate>

      <asp:hyperlink id=<%# Eval("ID")%> runat="server"></asp:hyperlink>

   </ItemTemplate>

</asp:repeater>

I need to get reference to each hyperlink and access to the attributes of it.

On ItemDataBound, how do I go ahead and access a hyperlink whose ID is just being set? If I had a fixed ID for the hyperlink, that wouldn't be a problem. But since the I need the ID to also be assigned dynamically, I kinda got lost in finding the way.

  1. Post:378

    Points:2694
    Re: How to access dynamically created items in a repeater?

    Hi Manoj, 


    private void rptMyTest_ItemDataBound(object sender,RepeaterItemEventArgs e)
        {
            if(e.Item.ItemType == ListItemType.AlternatingItem || e.Item.ItemType ==ListItemType.Item)
            {
                Control control = e.Item.FindControl("ID_OF_YOUR_CONTROL") as Control;
                if(control != null)
                {
                    var dataItem = e.Item.DataItem as MYITEMTYPE;
                    if(DateTime.Now > dataItem.DateYouNeedToCheck)
                        control.ToolTip = "from the past";
                  //ALL THE MAGIC HAPPENS HERE
                }
            }
        }

      Modified On Apr-05-2018 05:39:58 AM

Answer