IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

problème avec cellvalueChanged de mon datagridcomboboxcolomn


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    112
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 112
    Par défaut problème avec cellvalueChanged de mon datagridcomboboxcolomn
    Bonjour !

    j'aimerais gérer l'évenement cellValueChanged de mon datagrid qui contient 2 combobox mais rien ne se passe.

    Voici mon code :

    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
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
     
     'Événement permettant de gérer le changement de valeur des cellules du datagrid
        Private Sub DgWhse_CellValueChanged(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DgWhse.CellValueChanged
     
            If Obj IsNot Nothing AndAlso xIsLoading = False Then
     
                If e.RowIndex >= 0 AndAlso e.ColumnIndex >= 0 Then
     
                    Dim Invtype As CIctype = Obj
                    Dim TypeWarehouses() As CItwhs = CItwhs.GetWarehousesInvType(Invtype.ctype)
                    Dim Whse As CItwhs = DgWhse.Rows(e.RowIndex).Tag
     
                    If Whse Is Nothing Then
                        Exit Sub
                    End If
     
                    Select Case e.ColumnIndex
                        Case 0
     
                            'Chargement des entrepôts
                            Dim CellWhse As DataGridViewComboBoxCell = DgWhse.Rows(e.RowIndex).Cells(0).Value
     
                            'CellWhse.DataSource = VAM.CWhse.GetWarehouses()
                            'CellWhse.ValueMember = "cwarehouse"
                            'CellWhse.DisplayMember = "cwarehouse"
                            'CellWhse.Value = Nothing
     
                            'Vérification si le warehouse selectionné est dèjà associé au type d'inventaire
                            Dim Warehouses() As VAM.CWhse
                            Warehouses = VAM.CWhse.GetWarehouses()
     
                            Dim IsTypeWarehouse As Boolean = False
     
                            'For Each W As VAM.CWhse In Warehouses
                            '    If W.cwarehouse = Whse.cwarehouse Then
                            '        IsTypeWarehouse = True
                            '        MsgBox("This warehouse already exists for the Inventory Type " & TypeOfValue & MsgBoxStyle.Exclamation)
                            '    Else
                            '        CellWhse.DataSource = VAM.CWhse.GetWarehouses()
                            '        CellWhse.ValueMember = "cwarehouse"
                            '        CellWhse.DisplayMember = "cwarehouse"
                            '        CellWhse.Value = Nothing
                            '    End If
                            'Next
     
                        Case 1
                            'Description Warehouse
                            If CStr(DgWhse.Rows(e.RowIndex).Cells(1).Value & "").Trim = "" Then
                                DgWhse.Rows(e.RowIndex).Cells(1).Value = Whse.cdescript
                            End If
     
                        Case 2
     
                            'Chargement des entrepôts
                            Dim CellrevCode As DataGridViewComboBoxCell = DgWhse.Rows(e.RowIndex).Cells(2).Value
                            CellrevCode.DataSource = CArrevn.GetRevenusCode()
                            CellrevCode.ValueMember = "crevncode"
                            CellrevCode.DisplayMember = "crevncode"
                            CellrevCode.Value = Nothing
     
                            'Verifier que le code de revenu pour un warehouse est bien sélectionné afin de pouvoir sauvegarder les changements
                            If DgWhse.Rows(e.RowIndex).Cells(2).Value Is Nothing Then
                                MsgBox("Please Select a Revenu Code before saving your warehouse for Inventory Type " & TypeOfValue & MsgBoxStyle.Exclamation)
                            End If
                        Case 3
                            'Code GL1
                        Case 4
                            'Code GL2
     
                    End Select
                End If
            End If
        End Sub
    Merci d'avance

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Tu as essayé de mettre un point d'arrêt pour voir si ta méthode est bien appelée ?

  3. #3
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    112
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 112
    Par défaut
    Merci d'avoir répondu à mon post.

    En fait, je ne peux même pas faire de modifications dans mes cellules ajouter de nouvelles lignes. J'ai une condition qui si est vraie me change mes combobox en textbox.

    Merci encore

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par misscricri Voir le message
    En fait, je ne peux même pas faire de modifications dans mes cellules ajouter de nouvelles lignes
    Tu veux dire que le DataGridView est en lecture seule ? Dans ce cas pourquoi est-ce que la valeur changerait ? Ou alors j'ai pas compris ce que tu voulais...

  5. #5
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    112
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 112
    Par défaut
    Oui quand la condition est remplie, il est en lecture seul et à la dernieres ligne, il y a un combobox avec les valeurs par défaut si je veux ajouter une ligne a mon datagridview.

    Comment faire aussi pour comparer un 2 valeurs. Si je sélectionne une valeur dans mon combobox mais qui existe deja dans mon datagridview???

  6. #6
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par misscricri Voir le message
    Oui quand la condition est remplie, il est en lecture seul et à la dernieres ligne, il y a un combobox avec les valeurs par défaut si je veux ajouter une ligne a mon datagridview.
    Donc il est en lecture seule, sauf la dernière ligne ? Je suis pas sûr que ce soit possible, à moins de bidouiller...

    Citation Envoyé par misscricri Voir le message
    Comment faire aussi pour comparer un 2 valeurs. Si je sélectionne une valeur dans mon combobox mais qui existe deja dans mon datagridview???
    Difficile à dire comme ça, il faudrait que j'en sache plus. Ton DataGridView est bindé à une source de données (liste ou DataTable par exemple) ? Ou il est rempli manuellement ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème avec hibernate et mon bean
    Par biohazard401 dans le forum Hibernate
    Réponses: 6
    Dernier message: 20/03/2014, 19h27
  2. Réponses: 3
    Dernier message: 21/11/2013, 15h04
  3. Problème avec Tombsoting de mon application
    Par marwa21 dans le forum Windows Phone
    Réponses: 3
    Dernier message: 01/05/2011, 21h12
  4. [FTP] Problème avec fopen ou mon hébergeur ?
    Par YagamiLight dans le forum Langage
    Réponses: 2
    Dernier message: 06/07/2007, 17h06
  5. [DAO] problème avec Requery sur mon recordset
    Par vcattin dans le forum VBA Access
    Réponses: 8
    Dernier message: 03/04/2007, 23h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo