#19 Gestione dell’evento Click di più controlli con un unico metodo

Talvolta è necessario gestire con un unico metodo l’evento Click di più controlli: ad esempio potremmo avere un form con numerosi pulsanti e voler distinguere con un’unico metodo il pulsante che è stato premuto.

La tecnica che presento in questo esempio è particolarmente semplice, tanto da risultare disarmante:

Public Class Form1 
    Private Sub Button_Click(ByVal sender As System.Object, _ 
            ByVal e As System.EventArgs) _ 
            Handles Button1.Click, Button2.Click, Button3.Click 
        Dim messaggio As String = ("Premuto il pulsante n. ") 
        If sender Is Button1 Then  
            messaggio &= "1"        
        ElseIf sender Is Button2 Then 
            messaggio &= "2" 
        ElseIf sender Is Button3 Then  
            messaggio &= "3"        
        End If  
        MessageBox.Show(messaggio) 
    End Sub  
End Class      

Il trucco sta tutto nella seguente parte della definizione del metodo generale Button.Click, in quanto quest’ultimo viene istruito a rimanere in ascolto degli eventi Click di tutti e tre i pulsanti presenti sul form:

Handles Button1.Click, Button2.Click, Button3.Click
About these ads

Pubblicato il 11 febbraio 2008 su Tips. Aggiungi ai preferiti il collegamento . Lascia un commento.

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...

Iscriviti

Ricevi al tuo indirizzo email tutti i nuovi post del sito.

Unisciti agli altri 843 follower

%d blogger cliccano Mi Piace per questo: