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 :

Permettre de modifier une rangée d'un datagridview


Sujet :

VB.NET

  1. #1
    Membre éprouvé

    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Israël

    Informations forums :
    Inscription : Mars 2012
    Messages : 691
    Points : 929
    Points
    929
    Par défaut Permettre de modifier une rangée d'un datagridview
    Bonjour,

    j'ai un datagridview que je remplis avec un dataset
    un textbox et un bouton
    le datagridview est mis à readonly = true
    je voudrais après avoir tapé un string dans le textbox et cliquer le bouton
    selectioner la rangée dont rows(i).Cells(1).Value.ToString = la valeur du textbox
    et mettre cette rangée à readonly = false pour permettre de modifier les données
    des cellules
    voila le code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    DataGridView1.ReadOnly = True
     
    Private Sub Buttonshow_MouseClick(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Buttonshow.MouseClick
          For iter = 0 To DataGridView1.RowCount - 2
                If DataGridView1.Rows(iter).Cells(1).Value.ToString = searchnametxt.Text Then
                    DataGridView1.Rows(iter).ReadOnly = False
                    DataGridView1.Rows(iter).Selected = True
                    exit for
                End If
            Next
        End Sub
    le code fonctionne pas comme voulu
    la rangée est selectionnée mais DataGridView1.Rows(iter).ReadOnly = False
    n'a pas d'effet

    par contre si j'écris ainsi

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    ' DataGridView1.ReadOnly = True 
     
    Private Sub Buttonshow_MouseClick(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Buttonshow.MouseClick
          For iter = 0 To DataGridView1.RowCount - 2
                If DataGridView1.Rows(iter).Cells(1).Value.ToString = searchnametxt.Text Then
                    DataGridView1.Rows(iter).ReadOnly = False
                    DataGridView1.Rows(iter).Selected = True
                Else
                    DataGridView1.Rows(iter).ReadOnly = True
                End If
            Next
        End Sub
    cela fonctionne
    la question pourquoi la 1 er méthode ne fonctionne pas ?

    merci d'avance

  2. #2
    Membre émérite Avatar de meziantou
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Avril 2010
    Messages
    1 223
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2010
    Messages : 1 223
    Points : 2 439
    Points
    2 439
    Par défaut
    Extrait de la documentation: http://msdn.microsoft.com/en-us/libr...v=vs.110).aspx
    A cell is read-only if the value of the ReadOnly property is true for the cell, the cell's row, the cell's column, or the DataGridView.
    Donc à partir du moment où ton datagridview est en ReadOnly, toutes les cellules le sont aussi.

  3. #3
    Membre éprouvé

    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Israël

    Informations forums :
    Inscription : Mars 2012
    Messages : 691
    Points : 929
    Points
    929
    Par défaut
    merci
    j'ai résolu le problème
    au lieu de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DataGridView1.ReadOnly = True
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    For iter = 0 To DataGridView1.RowCount - 2
           DataGridView1.Rows(iter).ReadOnly = True
     Next

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

Discussions similaires

  1. modifier une ligne dans un datagridview
    Par misscricri dans le forum VB.NET
    Réponses: 5
    Dernier message: 30/10/2011, 20h51
  2. modifier une variable "range"
    Par shinji7800 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 12/03/2009, 16h18
  3. Modifier la couleur de ma police d'une colonne d'un datagridView
    Par skunkies dans le forum Windows Forms
    Réponses: 1
    Dernier message: 03/12/2008, 17h52
  4. Modifier une valeur d'un datagridview alimenté manuellement
    Par Runan dans le forum Windows Forms
    Réponses: 1
    Dernier message: 03/05/2007, 18h05
  5. Réponses: 1
    Dernier message: 13/03/2007, 16h31

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