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 :

Utilisation de DataGridViewComboBoxColumn


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de mohamed301084
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Mars 2010
    Messages : 104
    Par défaut Utilisation de DataGridViewComboBoxColumn
    Bonjour,

    J'utilise un dataGridview dans un formulaire permettant de recenser les réclamations clients.
    Une des colonnes du datagirview sert à renseigner le type de réclamation et est de type DATAGRIDVIEWCOMBOBOXCOLUMN.

    J'ai rentré dans la propriété ITEMS de cette colonne les trois valeurs

    Délai
    Lenteur
    Retard

    qui sont donc les trois raisons les plus probables de la création de la réclamation Client.


    Néanmoins, je souhaite laisse à l'utilisateur la possibilité de renseigner un type de réclamation personnalisé qui n'est pas dans la liste par défaut.


    Je suis maintenant confronté au problème suivant :
    Lorsqu'une valeur, autre que les valeurs entrées dans la propriété ITEMS, est utilisée, alors une exception est générée et je me retrouve dans l'evenement DATAERROR du DataGridView.


    Comment remédier à la situation ?


    Cdlt.

  2. #2
    Membre émérite
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juillet 2007
    Messages
    693
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 693
    Par défaut
    Bonjour,

    Quel est le type de ta colonne contenant les données ?

  3. #3
    Membre confirmé Avatar de mohamed301084
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Mars 2010
    Messages : 104
    Par défaut
    La colonne est de type DATADRIDVIEWCOMBOBOXCOLUMN


    Les données entrées dans cette colonne sont de type STRING.

  4. #4
    Membre confirmé Avatar de mohamed301084
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Mars 2010
    Messages : 104
    Par défaut
    Solution temporaire


    Je gère l'exception levée dans le DataError en ajoutant la valeur qui provoque l'exception dans la collection d'items de ma datagridviewcomboboxcolumn.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
     ''' <summary>
        ''' Au chargement d'un dossier avec un type de reclamation personnalisé :
        ''' on ajoute ce type dans la collection d'items par défaut 
        ''' </summary>
        ''' <remarks> ATTENTION LES AUTRES EXCEPTIONS DATAERROR NE SERONT PLUS LEVEES </remarks>
        Private Sub T_RECLAMATIONSDataGridView_DataError(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewDataErrorEventArgs) Handles T_RECLAMATIONSDataGridView.DataError
            'On ajoute l'item personnalisé apparu en erreur à la collection d'item 
            Dim laComboColum As DataGridViewComboBoxColumn = T_RECLAMATIONSDataGridView.Columns("TypeReclamationComboboxColumn")
            laComboColum.Items.Add(T_RECLAMATIONSDataGridView.Item(e.ColumnIndex, e.RowIndex).Value)
        End Sub

    En attendant mieux



    Cdlt.

  5. #5
    Membre émérite
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juillet 2007
    Messages
    693
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 693
    Par défaut
    Peux-tu poster l'exception obtenue ?

    Mais vu le traitement que tu as fait, ça doit un truc disant que la valeur sélectionnée ne fait pas partie de la liste des valeurs possibles.

    Ta solution fonctionne mais empêche l'utilisateur de modifier la valeur custom (afin ça ajoutera une nouvelle valeur).

    La solution serait de développer un nouveau type de colonne à partir de la comboboxcolumn (ou de la datagridviewcolumn) pour gérer directement les valeurs personnalisées et éviter de le faire dans ton code "final".

  6. #6
    Membre confirmé Avatar de mohamed301084
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Mars 2010
    Messages : 104
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MsgBox(e.Exception.Message)

    Voici le message d'erreur :



    La valeur DataGridViewComboBoxCell n'est pas valide

    Je pense que je vais rester sur la solution temporaire si rien de plus simple n'est proposé pour contourner le fonctionnement du type DataGridViewComboboxColumn


    :-)

Discussions similaires

  1. Réponses: 1
    Dernier message: 17/12/2013, 13h50
  2. comment utiliser un DataGridViewComboBoxColumn ?
    Par olive-andre dans le forum Windows Forms
    Réponses: 2
    Dernier message: 22/02/2010, 10h35
  3. utilisation du meta type ANY
    Par Anonymous dans le forum CORBA
    Réponses: 1
    Dernier message: 15/04/2002, 12h36
  4. [BCB5] Utilisation des Ressources (.res)
    Par Vince78 dans le forum C++Builder
    Réponses: 2
    Dernier message: 04/04/2002, 16h01
  5. Réponses: 2
    Dernier message: 20/03/2002, 23h01

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