IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

Evenements sur une List(Of Textbox)


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Juin 2008
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 64
    Par défaut Evenements sur une List(Of Textbox)
    Bonjour,

    je voulais savoir si il était possible de définir des événements sur une liste de textbox sans avoir à créer une classe pour les EventsArgs de ma liste, et ainsi éviter de définir chaque évenements à la main en utilisant Delegate.

    Il faut savoir que ma Liste de textbox est ajoutée dynamiquement à mon form via la commande :

    Form1.controls.add(...)

    Merci d'avance

  2. #2
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    Vois l'utilisation éventuelle d'une ObservableCollection et fais le cablage de tes event handlers dans l'event handlers d'ajout de l'ObservableCollection.

    C'est une possibilité, parmis tant d'autres.

  3. #3
    Membre confirmé
    Inscrit en
    Juin 2008
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 64
    Par défaut
    Concrètement j'ai ma classe comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Public Class From1
        Public WithEvents listTxtbox As New List(Of TextBox)
     
        Private Sub listTxtbox_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles listTxtbox.Click
            'mon code
        End Sub
     
        Public Sub New()
     
        End Sub
    End Class
    Coment faire pour que mon "Handles listTxtbox.Click" ne donne pas l'erreur suivante : L'évènement "Click" n'est pas déclaré.

    Merci !

  4. #4
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    Ben tu cables l'évenement dans le constructeur (la syntaxe en VB, je ne la connais pas, ce langage me donnant des boutons, désolé , mais c'est AddHandler ou un truc comme cela )

  5. #5
    Membre confirmé
    Inscrit en
    Juin 2008
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 64
    Par défaut
    En apportant des changements, j'obtient :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Public Class From1
        Public WithEvents listTxtbox As New List(Of TextBox)
         Public Delegate Sub EventHandler(ByVal sender As Object, ByVal e As EventArgs)
     
        Private Sub listTxtbox_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles listTxtbox.Click
            'mon code
        End Sub
     
        Public Sub New()
    Dim eventhdlr As New EventHandler(AddressOf Me.Textgpe_Click)
           Me.listTxtbox = New List(Of TextBox) AddHandler Click, AddressOf eventhdlr 
        End Sub
    End Class
    On a donc bien "Click" qui correspond à un la classe "Public Event Click()", et mon eventhdlr qui représent mon "EventHandler". cependant cela ne fonctionne pas ....

    A la place de créer un Delegate et d'instancier un eventHandler, n'est il pas possible de donner en paramètre une autre méthode de ma classe, tel que :

    Addhandler Click, AddressOf maFonction() ?

    Merci

  6. #6
    Membre confirmé
    Inscrit en
    Juin 2008
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 64
    Par défaut
    Citation Envoyé par pounaid Voir le message
    En apportant des changements, j'obtient :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Public Class From1
        Public WithEvents listTxtbox As New List(Of TextBox)
         Public Delegate Sub EventHandler(ByVal sender As Object, ByVal e As EventArgs)
     
        Private Sub listTxtbox_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles listTxtbox.Click
            'mon code
        End Sub
     
        Public Sub New()
    Dim eventhdlr As New EventHandler(AddressOf Me.Textgpe_Click)
           Me.listTxtbox = New List(Of TextBox) AddHandler Click, AddressOf eventhdlr 
        End Sub
    End Class
    On a donc bien "Click" qui correspond à un la classe "Public Event Click()", et mon eventhdlr qui représent mon "EventHandler". cependant cela ne fonctionne pas ....

    A la place de créer un Delegate et d'instancier un eventHandler, n'est il pas possible de donner en paramètre une autre méthode de ma classe, tel que :

    Addhandler Click, AddressOf maFonction() ?

    Merci

    Mon problème etait tout bête, il suffit de faire une boucle sur la liste et d'affecter avec AddHandler chaque élément de la liste, et non pas essayer d'affecter les évènements sur la liste elle même!

    Merci de ton aide Bluedeep !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2003] Evenement AfterUpdate Inopérant sur une liste de choix
    Par Jeanpierre71 dans le forum IHM
    Réponses: 6
    Dernier message: 03/12/2011, 12h31
  2. Réponses: 7
    Dernier message: 21/11/2011, 14h11
  3. [MooTools] Compatibilité de l'evenement mouseover sur une liste deroulante
    Par Samolo dans le forum Bibliothèques & Frameworks
    Réponses: 6
    Dernier message: 03/02/2011, 19h06
  4. Selectionnet tous ou faire un clear sur une liste
    Par Canou dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 17/11/2004, 10h26
  5. [Débutant][jsp] évènement sur une liste
    Par phoebe dans le forum Servlets/JSP
    Réponses: 5
    Dernier message: 14/05/2004, 10h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo