Comunque il controllo degli UC (aggiunta di uno ad un PH, ad esempio) di solito si fa dalla pagina.
Il trucco sta nel rendere pubblico l'evento click interno allo usercontrol, in modo da poterlo rilevare e gestire dalla pagina. Esempio:
drop.ascx
codice:<%@ Control Language="VB" AutoEventWireup="false" CodeFile="drop.ascx.vb" Inherits="WebUserControl" %> <asp: DropDownList Runat="server" ID="ddPersone" AutoPostBack="True"> <asp:listItem>Persona1</asp:listItem> <asp:listItem>Persona2</asp:listItem> <asp:listItem>Persona3</asp:listItem> </asp: DropDownList>
drop.ascx.vb
codice:Public ReadOnly Property TestoDD() As String Get Return ddPersone.SelectedItem.Text.ToString End Get End Property Public Event SceltaCambiata(ByVal s As Object, ByVal e As EventArgs) Private Sub ddPersone_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ddPersone.SelectedIndexChanged RaiseEvent SceltaCambiata(Me, e) End Sub
Nella pagina che ospita il controllo UC basta poi fare:
nel tuo caso invece di una drop ed il suo evento SelectedIndexChanged, c'e' un bottone con il click...(e poi una 'ripulita' dei controlli del placeholder e l'aggiunta del nuovo)codice:Private Sub istanzaUC_SceltaCambiata(ByVal s As Object, ByVal e As System.EventArgs) Handles istanzaUC.SceltaCambiata Response.Write("Dalla DROPDOWN nello UC hai scelto il testo: " & istanzaUC.TestoDD.ToString) End Sub

Rispondi quotando