cs_Jaxom
Messages postés29Date d'inscriptionlundi 13 mai 2002StatutMembreDernière intervention22 mars 2013
-
18 juin 2009 à 11:52
cs_Jaxom
Messages postés29Date d'inscriptionlundi 13 mai 2002StatutMembreDernière intervention22 mars 2013
-
18 juin 2009 à 12:10
Bonjour,
Bon,
J'ai un Dataset avec une superbe table dedans
J'ai un DatagridView avec les données de la table précitée grâce à un non moins superbe Databindings qui me permet de trier et de filtrer... Bref, jusque là... le bonheur.
Par contre, j'ai aussi 3 boutons Ajouter/Modifier/supprimer qui doivent envoyer le record en cours à une autre fenêtre.
Si je n'ai pas de problème pour ajouter:
Dim xex As DataRow = MembresDataSet.Tables(0).NewRow
dim zz as frm_Detail = new frm_Detail
zz.ShowPhil(xex)
Je voudrais savoir comment dans le cas du modifier/Supprimer je peux retrouver mon record, puisque databindings.current est un DataRowView et non un DataRow
J'ai bien trouvé un moyen avec la fonction suivante:
Public Function DB_GetRecordDataSet(ByVal Index As String, ByVal Table As DataTable) As DataRow
For Each xx As DataRow In Table.Rows
If xx.Item("Affilies_Id") = Index Then
Return xx
End If
Next
End Function
Mais comme j'ai plus de 100.000 record, c'est long
N'y-a-t-il pas un machin dans le databindings qui permette de pointer vers l'enregistrement de la datatable?
J'ai essayé ça aussi mais ça marche pas par contre
Dim yy As DataRow = MembresDataSet.Tables("Tbl_Affilies").NewRow
For i As Int32 = 0 To yy.ItemArray.Count - 1
yy.ItemArray(i) = Tbl_AffiliesBindingSource.Current.item(i)
Next
cs_Jaxom
Messages postés29Date d'inscriptionlundi 13 mai 2002StatutMembreDernière intervention22 mars 2013 18 juin 2009 à 12:10
Bon, j'ai finalement opté pour ça:
Dim yy As DataRow = MembresDataSet.Tables("Tbl_Affilies").NewRow
For i As Int32 = 0 To MembresDataSet.Tables("Tbl_Affilies").Columns.Count - 1
yy.Item(i) = Tbl_AffiliesBindingSource.Current.item(i)
Next
Ca fonctionne mais bon, je trouve pas ça très "propre"...