I have the following set up
Custom Control 1 – MyListControl
– Nested Collection of – MyListItemControl
MyListItemControl inherits from a Panel so I can write this:
<cc1:MyListControl ID="MyListControl1" runat="server">
<ListItems>
<cc1:MyListItemControl ID="MyListItemControl1" runat="server" CustomProperty="1">
<asp:LinkButton ID="LinkButton1" runat="server" CommandName="Edit">Edit</asp:LinkButton>
</cc1:MyListItemControl>
</ListItems>
</cc1:MyListControl>
I get no error and the Control does render, just not correctly. The above code if placed inside a Formview , the linkbutton does not get the PostBack script all that gets rendered is
<a id="LinkButton1">Edit</a>
Does anyone know why this is happening and the linkbutton is not being rendered as it normally would?
TIA
Andrew
Best Answer
To me, looks like a bug in ASP.Net that has to do with the LinkButton order in its parent's Controls collection.
This snippet:
Generates this HTML:
But this snippet (just inverted the order in which I'm adding the controls above, so LinkButton is first):
Doesn't show neither control!!!
The problem seems to be with LinkButton being the first in the parent's Controls collection. Workaround: add an empty Label before it, it gonna work :-)