Vider une Listbox à partir de Me.ActiveControl [Résolu]

Messages postés
3
Date d'inscription
samedi 4 juillet 2015
Statut
Membre
Dernière intervention
8 août 2015
- - Dernière réponse : Maxx04
Messages postés
3
Date d'inscription
samedi 4 juillet 2015
Statut
Membre
Dernière intervention
8 août 2015
- 8 août 2015 à 13:18
Bonjour,

J'ai commencé un projet il y a assez longtemps qui prend beaucoup de temps et là je bloque :
J'ai déjà réussi à vider une Textbox à partir d'un menu en récupérant le contrôle qui a le focus avec ce code :

Private Sub EffacerLeTexteToolStripMenuItem_Click(sender As System.Object, e As System.EventArgs) Handles EffacerLeTexteToolStripMenuItem.Click
        If TypeOf Me.ActiveControl Is TextBox Then
            Me.ActiveControl.Text = ""
        End If
    End Sub


Ce code marche avec toutes les zones de texte, et j'aimerais faire la même chose avec les listes. J'ai essayé ce code :

Private Sub ViderToolStripMenuItem_Click(sender As System.Object, e As System.EventArgs) Handles ViderToolStripMenuItem.Click
        If TypeOf Me.ActiveControl Is ListBox Then
            Me.ActiveControl.Items.Clear()
        End If
    End Sub


Mais ça ne marche pas, ça dit "'Items' n'est pas un membre de 'System.Windows.Forms.Control'"

Avez-vous une solution ?
Merci d'avance.
Afficher la suite 

1 réponse

Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
211
0
Merci
Bonjour,
ActiveControl n'a pas de propriété attitrée.
Il te faut alors passer par un tremplin (genre dim toto as listbox puis toto = activecontrol) ou (mieux) "forcer la main à la reconnaissance ===>>>
DirectCast(Me.ActiveControl, ListBox).Items.Clear()


________________________
Nul ne saurait valablement coder ce qu'il ne saurait exposer clairement.
Maxx04
Messages postés
3
Date d'inscription
samedi 4 juillet 2015
Statut
Membre
Dernière intervention
8 août 2015
-
D'accord merci beaucoup, j'essaierai ça chez moi :)
Commenter la réponse de ucfoutu