Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2003
    Messaggi
    352

    [VB:NET] User Control + Eventi

    Ho creato un user control con dei pulsanti.
    Vorrei che il click su un pulsante mi richiami un evento del form che ospiterà il controllo.
    A priori non so quale sarà il form che ospiterà il controllo e quindi faccio riferimento a ParentForm ma come faccio a richiamare l'evento?

    Grazie

  2. #2
    All'interno dello usercontrol devi dichiarare un evento, che sarà poi gestito dal form che utilizza il componente.
    codice:
    Public Class UserControl1
        Public Event MioEvento(sender As Object, e As System.EventArgs)
    
        Private Sub Button1_Click(sender As Object, e As System.EventArgs) Handles Button1.Click
            RaiseEvent MioEvento(Me, New EventArgs)
        End Sub
    End Class
    Chi non cerca trova.

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2003
    Messaggi
    352
    Si, questo va bene ma poi su ogni form dove metto lo User Control devo gestire l'evento dello User Control, mentre io vorrei in automatico che questo mi scatenasse un evento del form padre (qualunque esso sia) in modo che io eventualmente possa gestire poi direttamente l'evento del form padre e basta.

    E' possibile?

  4. #4
    Mi sembra la strada più corretta, mentre la tua idea mi sembra alquanto contorta e difficilmente realizzabile, in quanto nello usercontrol sarebbe necessario conoscere a priori in quali form verrà inserito.

    Del resto non è poi così faticoso scrivere nel form:
    codice:
    Private Sub MioUsercontrol1_MioEvento(sender As Object, e As System.EventArgs) Handles MioUserControl1.MioEvento
        Call AltroEvento()
    End Sub
    Chi non cerca trova.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.