none
Modifier un DataGridView RRS feed

  • Question

  • Bonjour,

    J'ai créé un DataGridView lié a un Dataset (sql).

    Il récupere 3 colonnes.

    Ensuite j'ajoute une colonne et je voudrais modifié le contenu de la cellule (4,i) pour chaque ligne

    Voici mon code :

    'Je passe la connexion et la requete

    Me.DGV_Annuaire.DataSource = MonDataSet1

    Me.DGV_Annuaire.DataMember = load

    Dim cell As DataGridViewCell = New DataGridViewTextBoxCell()

    Dim ColPresent As DataGridViewColumn = New DataGridViewColumn(cell)

    ColPresent.HeaderText = "Test"

    DGV_Annuaire.Columns.Add(ColPresent)

    For i = 0 To DGV_Annuaire.RowCount - 1

                DGV_Annuaire.Item(3, i) = New DataGridViewTextBoxCell

                With DGV_Annuaire.Item(3, i)

                  .Value = "ABSENT"

                  .Style.Alignment = DataGridViewContentAlignment.MiddleCenter

                End With

    Next


    Tout se passe bien a part que le contenu de la chaque cellulle de la colonne (3) reste vide !!

    Y at-il une protection qui empêche d'écrire dans les cellules de la derniere colonne

    Si je modifie l'index de la colonne et je remplace 3 par 0 j'arrive a écrire dans la premire colonne et écraser les données importées de la requete.

    Merci d'avance


    H.Sabatou

    mardi 3 décembre 2013 15:09

Réponses

  • Bonjour,

    Si votre DataGridView est bindé sur une DataTable de votre DataSet, il faut plustôt ajouter une colonne dans votre DataTable et insérer les donnée dans votre DataTable. Cela sera répercutera automatiquement dans le DataGridView...

    Cordialement


    Gilles TOURREAU - MVP C#
    Architecte logiciel/Consultant/Formateur Freelance - P.O.S Informatique
    Blog : http://gilles.tourreau.fr - Suivez-moi sur Twitter
    - MCPD : Enterprise Developper / Windows Developper 3.5 / ASP .NET 3.5/4.0
    - MCSA : SQL Server 2012
    - MCITP : SQL Server 2008 Developper
    - MCTS : ADO .NET 3.5 / SQL Server 2008 Developper / Windows Forms 3.5 / ASP .NET 3.5/4.0 / TFS 2010 / Windows Azure

    • Proposé comme réponse Aurel Bera mercredi 4 décembre 2013 13:40
    • Marqué comme réponse HSabatou jeudi 5 décembre 2013 08:32
    mardi 3 décembre 2013 23:56
    Modérateur

Toutes les réponses

  • Bonjour,

    Si votre DataGridView est bindé sur une DataTable de votre DataSet, il faut plustôt ajouter une colonne dans votre DataTable et insérer les donnée dans votre DataTable. Cela sera répercutera automatiquement dans le DataGridView...

    Cordialement


    Gilles TOURREAU - MVP C#
    Architecte logiciel/Consultant/Formateur Freelance - P.O.S Informatique
    Blog : http://gilles.tourreau.fr - Suivez-moi sur Twitter
    - MCPD : Enterprise Developper / Windows Developper 3.5 / ASP .NET 3.5/4.0
    - MCSA : SQL Server 2012
    - MCITP : SQL Server 2008 Developper
    - MCTS : ADO .NET 3.5 / SQL Server 2008 Developper / Windows Forms 3.5 / ASP .NET 3.5/4.0 / TFS 2010 / Windows Azure

    • Proposé comme réponse Aurel Bera mercredi 4 décembre 2013 13:40
    • Marqué comme réponse HSabatou jeudi 5 décembre 2013 08:32
    mardi 3 décembre 2013 23:56
    Modérateur
  • Bonjour,

    Merci pour cette réponse, je reviens avec une réponse des que possible

    Cdlt,


    H.Sabatou

    mercredi 4 décembre 2013 13:49
  • Bonjour Gilles

    J'ai testé votre solution, d'ajouter en premier les colonnes au niveau de la table du dataset, ensuite je modifie les valeurs et les icônes directement dans le DataGridView : nickel ça fonctionne parfaitement !

    Merci

    Cdlt,

    H.Sabatou

    jeudi 5 décembre 2013 08:31