Search code examples
asp.netvb.netlinkbuttonasprepeater

How do I access properties of non-fired LinkButtons in an ASP RepeaterControl?


I have a navigation bar which is dynamically populated with LinkButtons by an ASP repeaterControl.

I have no problem accessing, and setting properties for the clicked LinkButton. This I can do using the sender object from the fired LinkButton. Once a LinkButton is clicked, it is highlighted in bold.

My problem is to clear the bold property of the previously clicked linkButton when a new LinkButton ( another RepeaterItem within the same repeater) is clicked.

Any ideas on this, please? Many thanks!

ps. I cannot access the buttons through their ID, since they all have the same ID within the repeater.

I have unique arguments on each RepeaterItem (CommandArgument), but when I try to iterate through all linkbuttons, only static linkbuttons are found, none inside the repeater. See below:

Dim c As Control
For Each c In Form1.Controls
    If TypeOf c Is LinkButton Then
        MsgBox(DirectCast(c, LinkButton).CommandArgument)
    End If
Next c

Solution

  • Try this:

    For each item as RepeaterItem in YourRepeaterControl.Items
    
        Dim button as LinkButton = item.FindControl("YourLinkButtonId")
        If button IsNot Nothing Then
            'Do whatever you want here
        End If
    
    Next