Bonjour,

Je suis sous visual studio 2005 express, je fais une application en vbnet avec une base de données access.

J'ai un Datagrid qui a deux colonnes la premiére c'est des case à cocher et la deuxieme c'est un champ d'une table.

L'utilisateur peut ajouter des lignes, et peur cocher n'importe qu'elle ligne.

Quand il valide, je voudrais insérer dans une table les champs des lignes qui on été cochées meme pour les nouvelles lignes que l'utilisateur a pu rajouter.

J'ai fais ça :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
 
Private Sub Valider_Click(ByVal se.....
 
Dim DTAVMaj As New DataView
        Dim DTARV As DataRowView
        command.Connection.Open()
        DTAVMaj.Table = DTable
        DTAVMaj.RowStateFilter = DataViewRowState.Added Or DataViewRowState.ModifiedCurrent 'DataViewRowState.Deleted Or DataViewRowState.ModifiedCurrent Or 
        For Each DTARV In DTAVMaj 
 
            Select Case DTARV.Row.RowState
                Case DataRowState.Added
                    command.CommandText() = "INSERT INTO Niveaux (Nom)" _
                    & " VALUES ('" & DTARV.Row.Item("Nom") & "')"
                    command.ExecuteNonQuery()
                    If DTARV.Row.Item(0).ToString = "true" Then
                        MsgBox(DTARV.Row.Item("Nom") & "je suis cochée")
                    End If
                Case DataRowState.Modified
                    command.CommandText() = "INSERT INTO Niveaux (Nom)" _
                    & " VALUES ('" & DTARV.Row.Item("Nom") & "')"
                    command.ExecuteNonQuery()
                    If DTARV.Row.Item(0).ToString = "true" Then
                        MsgBox(DTARV.Row.Item("Nom") & "je suis cochée")
                    End If
            End Select
        Next
Le pb est que ça ne marche pas : le if ne se déclenche pas. J'ai essayé le cas d'une ligne modifié pensant que coché une case modifie une ligne mais non plus.

Je pense que ma démarche n'est pas la bonne il faudrait parcourir le datagrid ligne par ligne, si la case est cochée alors insérer le champ dans une table, alors que là j'avance par état de la ligne (ajoutée, modifiée)...

Si quelqu'un a une idée je suis preneuse,

merci beaucoup