6 messaggi dal 21 luglio 2004
Ciao a tutti,
ho iniziato da poco a studiare come si realizzano componenti Custom compositi in ASP:NET.
Così ho creato un nuovo progetto di tipo "libreria di controlli web" ed ho fatto si che il mio controllo WebCustomControl1 erediti da System.Web.UI.WebControls.Panel e da INamingContainer.
Poi ho aggiunto, all'interno del controllo, una textbox e un pulsante.
Fin qui tutto bene: sono addirittura riuscita a inserire il mio controllo in una pagina web e a runtime compariva questo bel pannello rosa con dentro una textbox ed un pulsante (wow!).
A questo punto ho cercato di fare in modo che alla pressione del pulsante, la scritta contenuta nella textbox diventasse "Pulsante premuto!" ma non ci sono riuscita.

Ecco il codice del mio componente:

namespace WebControlLibraryProva
{
[defaultProperty("Text"),ToolBoxData("<{0}:WebCustomControl1 runat=server></{0}:WebCustomControl1>")]

public class WebCustomControl1 : System.Web.UI.WebControls.Panel, INamingContainer
{
[Bindable(true),
Category("Appearance"),
DefaultValue("")]

protected override void CreateChildControls()
{
// aggiungo una textbox
TextBox TextBox_prova = new TextBox();
TextBox_prova.ID = "TextBox_prova";
TextBox_prova.Text = "Mia Prova";
this.Controls.Add(TextBox_prova);

// aggiungo due trattini per separare la textbox dal pulsante che prossimamente creerò:
this.Controls.Add(new LiteralControl("<font>-->/font>");

// aggiungo un pulsante:
Button btn_prova = new Button();
btn_prova.ID = "btn_prova";
btn_prova.Text = "Click me!";
btn_prova.Click += new EventHandler(this.btn_prova_Click);
this.Controls.Add(btn_prova);

}

protected override void Render (HtmlTextWriter output)
{
this.BackColor = System.Drawind.Color.Pink;

base.Render(output);
}

private void btn_prova_Click(Object sender, SystemEventArgs e)
{
((TextBox)(this.Controls[0])).Text = "Pulsante Premuto!";
}

}
}



dove sbaglio?
Grazie

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.