ho più bottoni che richiamano la stessa funzione, dal codice vorrei sapere qual è il bottone che ha richiamato la funzione... come posso fare?![]()
![]()
ho più bottoni che richiamano la stessa funzione, dal codice vorrei sapere qual è il bottone che ha richiamato la funzione... come posso fare?![]()
![]()
L'oggetto Request contiene la chiave "__EVENTTARGET" nella quale è contenuto l'id del controllo che ha inviato la richiesta.
esempio:
codice:if(Request["__EVENTTARGET"] == MyControl.UniqueId) { }
Ti rispondo in basic ma credo che come esperto di c# non avrai difficoltà a tradurre.
Un evento, nel framework, ha sempre due parametri.
Il primo è l'oggetto che scatena l'evento, il secondo è un oggetto ereditato da System.EventArgs
Perciò, la risposta la avrai indagando sul primo parametro.
Come questo esempio.
codice:Protected Sub Button_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click, Button2.Click Dim b As Button = DirectCast(sender, Button) PrintLn(b.ID) End Sub
Pietro
grazie del tuo consiglio, anche se non mi ha aiutato...Comunque ho risolto cosi:
switch (((ImageButton)sender).ID){
case "ImageButton1": path="a.pdf"; break;
case ...
case ...
ecc ecc
}
NomeFrame.Attributes["src"]=path; <-- Questo mi è servito per reindirizzare il frame ad un file pdf
grazie anche a te Pietro...peccato che la tua risposta l'ho vista ora!![]()
comunque il tuo esempio mi sarebbe stato molto utile..![]()
Mi permetto di aggiungere un suggerimento utile in una occasione simile:
Le due proprietà sopra, sono state create apposta per fare quello che hai richiesto.codice:'nel file.aspx: <asp:linkButton runat="server" OnCommand ="pippo_click" CommandArgument="nome_pdf" CommandName="Titolo_pdf".... 'nel codice invece Protected Sub pippo_Click(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.CommandEventArgs) Handles Button1.Command, Button2.Command dim link as String = e.commandargument dim titolo as string= e.commandname 'fai quello che vuoi con il titolo e il link End Sub
Ho scritto senza provare nulla, attenzione ad eventuali errori di battitura.
Ciao
Legnetto