Check All, CheckedListBox | VB.net
Résolu
Xineroks
Messages postés
158
Date d'inscription
Statut
Membre
Dernière intervention
-
Xineroks Messages postés 158 Date d'inscription Statut Membre Dernière intervention -
Xineroks Messages postés 158 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'aimerais pouvoir checker tous mes éléments dans ma CheckedListBox ( CLB en abrégé )
Sachant que mes Items proviennent d'une base de données.
J'ai déjà essayer plusieurs technique. Mais ce qui conviendrait le mieux, je pense, c'est
l'utilisation d'une boucle for pour faire le changement d'index ou d'item.
Ex :
For i = 0 to NBdates.Executescalar
CLB.selectedindex = i
...
Next
Le soucis c'est que ça ne marche pas.
PS : J'ai tenté les techniques comme si les données provenaient d'une collection "faite à la main" mais du coup ça enlève les Items. Donc à éviter.
Merci d'avance.
Xineroks
J'aimerais pouvoir checker tous mes éléments dans ma CheckedListBox ( CLB en abrégé )
Sachant que mes Items proviennent d'une base de données.
J'ai déjà essayer plusieurs technique. Mais ce qui conviendrait le mieux, je pense, c'est
l'utilisation d'une boucle for pour faire le changement d'index ou d'item.
Ex :
For i = 0 to NBdates.Executescalar
CLB.selectedindex = i
...
Next
Le soucis c'est que ça ne marche pas.
PS : J'ai tenté les techniques comme si les données provenaient d'une collection "faite à la main" mais du coup ça enlève les Items. Donc à éviter.
Merci d'avance.
Xineroks
2 réponses
-
J'obtiens toujours une erreur du style :
InvalidArgument=La valeur '0' n'est pas valide pour 'index'. Nom du paramètre : index
On me demande un entier, je lui donne un entier, mais ça râle quand même !
Voici mon code, sait-on jamais :
For i = 1 To Nbdates.ExecuteScalar - 1 myreader.Read() CLB_DatesReserv.SelectedIndex = 0 If CLB_DatesReserv.GetItemChecked(CLB_DatesReserv.Items.IndexOf(CLB_DatesReserv.SelectedItem)) = False Then ajoutDate.CommandText() = "INSERT INTO reservation VALUES(" & maxReserv.ExecuteScalar + 1 & ",'RR','N'," & moncode(0) & ",'" & myreader(0).ToString & "','CPREPRR','O','N')" Try ajoutDate.ExecuteNonQuery() Catch MsgBox("Reservation non autorisée car aucun parent n'est associé à cet enfant", MsgBoxStyle.OkOnly, "Avertissment") TB_CharResEnf.Text = "" CLB_DatesReserv.ClearSelected() End Try End If Next
:/ -
Je suis passé par une autre manière pour résoudre mon soucis.
Le sujet n'est donc pas résolue en lui même mais mon problème si.
Voici le code utilisé :
If NoAction Then Exit Sub Const monzero As String = "0" CLB_DatePres.Items.Clear() Dim moncode() As String moncode = Split(LB_CharResEnf.SelectedItem, " ") Dim madate() As String, moismodif As String madate = Split(CB_DateReserv.SelectedItem, "-") If madate(1) < 10 Then moismodif = monzero + madate(1) Else moismodif = madate(1) End If Dim sqlCnx As New System.Data.Odbc.OdbcConnection(My.Settings.CS_CantineBDD) Dim maxReserv As New System.Data.Odbc.OdbcCommand("SELECT MAX(codereservation) FROM reservation", sqlCnx) Dim ajoutDate As New System.Data.Odbc.OdbcCommand("", sqlCnx) Dim verifreserv As New System.Data.Odbc.OdbcCommand("", sqlCnx) Dim Nbdates As New System.Data.Odbc.OdbcCommand("SELECT COUNT(datedispo) FROM lesdates WHERE CAST(datedispo AS VARCHAR(10)) LIKE '" & madate(0) & "-" & moismodif & "%'", sqlCnx) Dim mesdates As New System.Data.Odbc.OdbcCommand("SELECT datedispo FROM lesdates WHERE CAST(datedispo AS VARCHAR(10)) LIKE '" & madate(0) & "-" & moismodif & "%' ORDER BY datedispo", sqlCnx) Dim myreader As Odbc.OdbcDataReader sqlCnx.Open() myreader = mesdates.ExecuteReader For i = 1 To Nbdates.ExecuteScalar myreader.Read() verifreserv.CommandText() = "SELECT COUNT(codeelever) FROM reservation WHERE codeelever = " & moncode(0) & " AND CAST(jourreserv AS VARCHAR(10)) = '" & myreader(0).ToString & "'" If verifreserv.ExecuteScalar = 0 Then ajoutDate.CommandText() = "INSERT INTO reservation VALUES(" & maxReserv.ExecuteScalar + 1 & ",'RR','N'," & moncode(0) & ",'" & myreader(0).ToString & "','CPREPRR','O','N')" Try ajoutDate.ExecuteNonQuery() Catch MsgBox("Reservation non autorisée car aucun parent n'est associé à cet enfant", MsgBoxStyle.OkOnly, "Avertissment") TB_CharResEnf.Text = "" CLB_DatePres.ClearSelected() End Try End If Next sqlCnx.Close() End Sub