Bonjour
J'ai fait quelque tests afin d'essayer de trouver où se trouvent mes items de cbx :
Msgbox(Me.Cbx1.Items()(2).ToString)
Resultat affiché: "System.Data.DataRowView"
en lisant ça jme dit "tiens tiens les items sont encore au format DataView (alors que la dataview qui a servi à affecter le datasource n'existe plus depuis belle lurette)". J'essaie quand même un cast :
Msgbox(CType(Me.Cbx1.Items()(2), DataRowView).Row.Item("Names").ToString)
Resultat affiché: "Axe Grip" (c'est bien l'affichage du 3e item de la dropdownList)
Encore mieux, je découvre qu'après un Cast, l'objet obtenu a la méthode Delete ! Je me dit "Super voilà ce qui me fallait", et me voilà à taper dans mon code ceci :
1 2 3 4 5 6
| If Me.Cbx1.FindStringExact(Me.Cbx2.Text) > -1 Then
CType(Me.Cbx1.Items()(Me.Cbx1.FindStringExact(Me.Cbx2.Text)), DataRowView).Delete()
End If
If Me.Cbx2.FindStringExact(Me.Cbx1.Text) > -1 Then
CType(Me.Cbx2.Items()(Me.Cbx2.FindStringExact(Me.Cbx1.Text)), DataRowView).Delete()
End If |
... et là surprise !!
Non seulement il me delete Cbx1.Text et Cbx2.Text, mais il le fait ..... sur ma BDD carrément ces 2 valeurs disparaissent littéralement de la nature, totalement "pulvérisées" (heureusement g une backup de mon fichier BDD)
Donc bon je suis pas encore au bout de mes peines...
Si quelqu'un a une idée de la bonne syntaxe en moins , "I'm interested please".
Partager