Cocher Cheklistbox à partir d'une listbox
Résolujulia Namor Messages postés 524 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je sollicite vos éclairages pour pouvoir cocher tous les items de la Cheklistbox qui comportent des valeurs présentes dans la listbox .
j’espère que mon explication est claire .je vous joins une capture pour illustrer
merci à vous
ce code de test ne détecte pas les items de la lisbox
For Each itm In CheckedListBox2.Items MsgBox(itm) Dim s As String = itm s = s.Replace(" ", "") If CheckedListBox1.Items.Contains(s) Then MsgBox("yes") Else MsgBox("No yes") End If Next
Windows / Fi
refox 117.0
- Cocher Cheklistbox à partir d'une listbox
- Creer un groupe whatsapp a partir d'un autre groupe - Guide
- Comment faire une recherche à partir d'une photo - Guide
- Créer une icone à partir d'une image - Guide
- Créer une vidéo à partir de photos - Guide
- Case à cocher open office - Forum LibreOffice / OpenOffice
3 réponses
Bonjour
tu cherches à comparer des dates mais pas en tant que dates.
En réalité tu compares le .ToString() d'un item de CheckListBox à des items de ListBox.
Comme VB.Net est un langage souple ça pourrait peut-être fonctionner si le format textuel des dates dans les contrôles étaient rigoureusement identiques, mais ce n'est pas le cas.
Si tu as codé comme il le faudrait en .Net, tes 2 contrôles ne sont que des afficheurs et il existe dans ton programme 2 collections de données, typées en DateTime. Dans ce cas, c'est avec ces 2 collections qu'il faut travailler. Donne nous la.structure des ces collections et on te proposera des options.
Si ça n'est pas le cas, je t'invite à lire ce tuto sur le binding https://codes-sources.commentcamarche.net/faq/1291-utilisation-du-binding-au-travers-de-l-objet-databindingsource je pars du principe que tu codes en Winform car rien n'indique une autre technologie dans ton extrait de code.
Si après la lecture de ce tuto, tu entrevois l'intérêt et tu remanies ton code pour t'y adapter, cf au dessus.
Dans la négative, tu vas de voir caster tes items en date pour les comparer et après te rappeler de quel item il s'agit pour le cocher ou non
Bonjour
Toute la solution se trouve dans cette phrase , je pense
En réalité tu compares le .ToString() d'un item de CheckListBox à des items de ListBox.
Du coup j'ai repensé le code et voila ce qui marche au final .
Dim i As Integer For i = 1 To Len(TextBox15.Text) Step 11 Dim iDate As String = Format(Mid(TextBox15.Text, i, 11)) Dim oDate As DateTime = Convert.ToDateTime(iDate) Dim aurore As Date = oDate.Day & "/" & oDate.Month & "/" & oDate.Year For ii = 0 To CheckedListBox1.Items.Count - 1 Dim Item As Object = CheckedListBox1.Items(ii) If Item.contains(aurore) Then Me.CheckedListBox1.SetItemChecked(ii, True) End If Next ii CheckedListBox1.Enabled = False Next i
Merci de m'avoir éclairé