Pagina personale di:
Carlo Vecchio
appunti di C#, R, SQL Server, ASP.NET, algoritmi, numeri
Vai ai contenuti

ASP.NET - Controlli 2

ASP.NET

Button, LinkButton, ImageButton


  • Tutti e tre i controlli fanno un post della pagina al server.

Proprietà
  • Text (per Button e LinkButton): testo mostrato nel Button o nel LinkButton.
  • ImageUrl (per ImageButton): link all’immagine mostrata nell’ImageButton.
  • OnClientClick: codice Javascript eseguito sul client. Ad esempio:

   <asp:Button ID="Button1" runat="server" Text="Button"
               
OnClientClick="alert('Messaggio di avviso');" />
   
   
<asp:Button ID="Button2" runat="server" Text="Button"
               
OnClientClick="return confirm('Messaggio di conferma');" />

Eventi
  • Click e Command: generati entrambi al click sul controllo; Click avviene prima di Command. Inoltre l'evento Command può gestire i due parametri CommandName e CommandArgument utilizzati per differenziare le azioni da svolgere nel caso che più bottoni abbiano lo stesso CommandName e lo stesso gestore dell'evento.
  • Esempio: cinque bottoni con lo stesso gestore evento.



  • Progettazione:

   <asp:Button ID="btnFunzione1" runat="server" Text="Funzione1"
              
OnCommand="btnFunzioni_Command"
               
CommandName="Funzione1" />
   
<br />
   
<asp:Button ID="btnFunzione2" runat="server" Text="Funzione2"
              
OnCommand="btnFunzioni_Command"
               
CommandName="Funzione2" />
   
<br />
   
<asp:Button ID="btnFunzione3_1" runat="server" Text="Funzione3_1"
              
OnCommand="btnFunzioni_Command"
               
CommandName="Funzione3"
               
CommandArgument="Argomento1" />
   
&nbsp;
   
<asp:Button ID="btnFunzione3_2" runat="server" Text="Funzione3_2"
              
OnCommand="btnFunzioni_Command"
               
CommandName="Funzione3"
              
CommandArgument="Argomento2" />
   
&nbsp;
   
<asp:Button ID="btnFunzione3_3" runat="server" Text="Funzione3_3"
           
OnCommand="btnFunzioni_Command"
           
CommandName="Funzione3"
           
CommandArgument="Argomento3" />

  • Gestore evento:

       protected void btnFunzioni_Command(object sender, CommandEventArgs e)
       {
           
switch (e.CommandName)
           {
               
case "Funzione1":
                   Response.Write(
"Hai cliccato in Funzione1");
                   
break;
               
case "Funzione2":
                   Response.Write(
"Hai cliccato in Funzione2");
                   
break;
               
case "Funzione3":
                   
switch (e.CommandArgument.ToString())
                   {
                       
case "Argomento1":
                           Response.Write(
"Hai cliccato in Funzione3 Argomento1");
                           
break;
                       
case "Argomento2":
                           Response.Write(
"Hai cliccato in Funzione3 Argomento2");
                           
break;
                       
case "Argomento3":
                           Response.Write(
"Hai cliccato in Funzione3 Argomento3");
                           
break;
                       
default:
                           
break;
                   }
                   
break;
               
default:
                   
break;
           }
       }

© 2020 Carlo Vecchio
Torna ai contenuti