LISTBOX AVEC CHECKBOX + IMAGE STYLÉ

Signaler
Messages postés
291
Date d'inscription
vendredi 21 février 2003
Statut
Membre
Dernière intervention
13 mars 2015
-
Messages postés
2
Date d'inscription
mardi 12 octobre 2004
Statut
Membre
Dernière intervention
10 octobre 2007
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/34099-listbox-avec-checkbox-image-style

Messages postés
2
Date d'inscription
mardi 12 octobre 2004
Statut
Membre
Dernière intervention
10 octobre 2007

Très efficace, je te remercie pour cette source!
Un belge qui cherchait une solution!
Messages postés
3172
Date d'inscription
dimanche 15 février 2004
Statut
Membre
Dernière intervention
9 avril 2017
30
Oui, on peut l'utiliser avec le concepteur window form sans aucun problème.
C'est juste moi qui l'ai volontairement désactivé. Je le déteste, je ne l'utilise jamais,
il me met la pagaille dans le code avec pleins de trucs inutiles. (Désolé, je m?emporte)
Mais c'est vrai que du coup, je ne pense pas pour ceux qui l'utilisent.

Bien vu pour le CheckedChanged. Merci

__
Kenji
Messages postés
4
Date d'inscription
dimanche 20 juin 2004
Statut
Membre
Dernière intervention
21 janvier 2007

Merci super source :) . Pour info on peut l'utiliser avec le concepteur de forme aussi (je suis en 2005), pour cela il suffit d'englober les codes des sub OnDrawItem et OnMeasureItem par

If MyBase.Items.Count > 0 Then

...

end if

Et une petite modification qui peut s'avérer utile c'est de rajouter l'événement checkedChanged

il suffit de rajouter dans les déclarations

Public Delegate Sub checkedChangeDelegate(ByVal sender As Object, ByVal e As ItemCheckEventArgs)
Public Event checkedChange As checkedChangeDelegate

et dans OnMouseDown aprés "If ItemBounds.Contains(e.X, e.Y) = True Then" :

Dim checked As Boolean = CType(MyBase.Items(MyBase.SelectedIndex), ListItem).m_Checked
If checked Then
RaiseEvent checkedChanged(Me, New ItemCheckEventArgs(MyBase.SelectedIndex, CheckState.Unchecked, CheckState.Checked))
Else
RaiseEvent checkedChanged(Me, New ItemCheckEventArgs(MyBase.SelectedIndex, CheckState.Checked, CheckState.Unchecked))
End If

@++
Messages postés
1
Date d'inscription
mercredi 30 novembre 2005
Statut
Membre
Dernière intervention
4 janvier 2006

Merci je suis enfin sortie de ce problème de checklistbox peu convivial. @+
Afficher les 14 commentaires