23 messaggi dal 23 novembre 2006
Ciao a tutti,

come da titolo in una pagina genero n controlli fra cui dei linkbutton. Alla pressione di un qualsiasi linkbutton, ho bisogno che al postback posso riconoscere quale dei linkbutton lo ha scatenato.

Es. btn1, btn2, btn3 generati a runtime, click sul btn2, recupero l'id del controllo che ha generato il postback (btn2), eseguo la funzione che solo btn2 deve fare.

Un sistema deve essere sempre concepito in modo da resistere alla peggiore combinazione possibile di circostanze.
3.121 messaggi dal 29 ottobre 2001
Contributi | Blog
Se tutti questi linkbutton solo collegati ad un unico evento "Onclick", puoi scrivere:

void bt_OnClick(object o, EventArgs e)
{
Button bt=(Button)o;
if (bt.Id=="Bt1") ...
if (bt.Id=="Bt2") ...
}

Ciao
23 messaggi dal 23 novembre 2006
ok, ma io posso avere n linkbutton, non posso fare n if per capire quali dei linkbutton ha scatenato il postback.

Io, principalmente, ho bisogno di recuperare l'id del controllo che ha generato il postback. Tipo :

if (IsPostBack)
{
//quì come posso recuperare l'id del controllo che ha generato il postback?
//nel viewstate o qualcosa del genere non viene riportato il nome del controllo che lo ha causato?
}

Un sistema deve essere sempre concepito in modo da resistere alla peggiore combinazione possibile di circostanze.
3.939 messaggi dal 28 gennaio 2003
francescogt ha scritto:
ok, ma io posso avere n linkbutton, non posso fare n if per capire quali dei linkbutton ha scatenato il postback.

Io, principalmente, ho bisogno di recuperare l'id del controllo che ha generato il postback. Tipo :

if (IsPostBack)
{
//quì come posso recuperare l'id del controllo che ha generato il postback?
//nel viewstate o qualcosa del genere non viene riportato il nome del controllo che lo ha causato?
}


1) veramente non devi fare n if per capire quale linkbutton ha scatenato l'evento. Dal codice che ti hanno dato, Button bt=(Button)o, bt è il link cercato, bt.id è l'id cercato.

ps. o non ho capito la domanda?
23 messaggi dal 23 novembre 2006
pietro09 ha scritto:
francescogt ha scritto:
ok, ma io posso avere n linkbutton, non posso fare n if per capire quali dei linkbutton ha scatenato il postback.

Io, principalmente, ho bisogno di recuperare l'id del controllo che ha generato il postback. Tipo :

if (IsPostBack)
{
//quì come posso recuperare l'id del controllo che ha generato il postback?
//nel viewstate o qualcosa del genere non viene riportato il nome del controllo che lo ha causato?
}


1) veramente non devi fare n if per capire quale linkbutton ha scatenato l'evento. Dal codice che ti hanno dato, Button bt=(Button)o, bt è il link cercato, bt.id è l'id cercato.

ps. o non ho capito la domanda?


Cerco di spiegarmi meglio. Nella mia pagina c'è una textbox che accetta solo dei numeri. Quando io inserisco un numero ad es "3" avviene il postback della pagina. Al postback vengono generati "3" controlli, fra cui 3 linkbutton. Fin qui ci siamo. Al click di uno di essi (linkbutton) io non so come recuperare l'id del controllo che ha generato il postback. Tutto quì.

Spero di essermi spiegato meglio.

p.s. 1) veramente non devi fare n if per capire quale linkbutton ha scatenato l'evento. Dal codice che ti hanno dato, Button bt=(Button)o, bt è il link cercato, bt.id è l'id cercato.

Io non sò proprio qual'è il controllo da cercare proprio perchè non sò quale dei tanti (linkbutton) ha scatenato il postback.

Un sistema deve essere sempre concepito in modo da resistere alla peggiore combinazione possibile di circostanze.
3.121 messaggi dal 29 ottobre 2001
Contributi | Blog
Forse questo ti può aiutare:

string ctrlname = page.Request.Params.Get("__EVENTTARGET");

Ciao
23 messaggi dal 23 novembre 2006
andrewz ha scritto:
Forse questo ti può aiutare:

string ctrlname = page.Request.Params.Get("__EVENTTARGET");

Ciao


Sì è proprio quello che stavo cercando. Grazie. ;)

Un sistema deve essere sempre concepito in modo da resistere alla peggiore combinazione possibile di circostanze.

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.