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

Windows Forms Discussion :

[VB.NET] Datagrid sélection ligne


Sujet :

Windows Forms

  1. #1
    Membre actif
    Inscrit en
    Mai 2004
    Messages
    297
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 297
    Points : 207
    Points
    207
    Par défaut [VB.NET] Datagrid sélection ligne
    Bonjour,

    Je souhaiterai simuler lors d'un clique sur une cellule de ma ligne la sélection compléte de la ligne.

    Si qq'un avait une idée

    Merci

  2. #2
    Membre actif
    Inscrit en
    Mai 2004
    Messages
    297
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 297
    Points : 207
    Points
    207
    Par défaut
    j'ai essayé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Me.DataGrid_Seance.SelectionBackColor = System.Drawing.Color.LightYellow
    mais cela ne marche pas j'ai toujours la couleur bleu lors de la sélection de la ligne ...

    je n'y comprend rien ...

  3. #3
    Membre actif
    Inscrit en
    Mai 2004
    Messages
    297
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 297
    Points : 207
    Points
    207
    Par défaut
    quelqu'un aurait un lien vers un tuto ou autre svp ?

  4. #4
    Membre régulier Avatar de Piet
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    111
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2004
    Messages : 111
    Points : 108
    Points
    108
    Par défaut
    Faut peut-être penser à travailler avec le CurrentRowIndex du dataGrid
    Vérifier le CurrentRowIndex et faire un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    this.dataGrid1.IsSelected(this.dataGrid1.CurrentRowIndex)=true;
    Piet

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Juillet 2005
    Messages : 80
    Points : 83
    Points
    83
    Par défaut
    tu peux mettre ça au currentCellChanged :
    tonDataGrid.Select(tonDataGrid.CurrentRowIndex)

    @+

  6. #6
    Membre actif
    Inscrit en
    Mai 2004
    Messages
    297
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 297
    Points : 207
    Points
    207
    Par défaut
    le currentcellchanged marche parfaitement
    ensuite j'utilise le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
     Me.DataGrid_Seance.Select(Me.DataGrid_Seance.CurrentRowIndex)
    Merci beaucoup

  7. #7
    Nouveau Candidat au Club
    Inscrit en
    Janvier 2006
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 1
    Points : 1
    Points
    1
    Par défaut
    Bonjour,
    A partir de cette sélection sur une ligne complète avec un événement sur click du datagrid, il ne se passe rien si l'on clique sur une cellule. Il faut trouver les "aretes" de la grille et cliqué dessus, est-ce que ce serait pas possible de le faire sur la cellule également ?
    (Je sais pas si c'est très clair désolée)

  8. #8
    Expert éminent
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 63
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Points : 7 879
    Points
    7 879
    Par défaut
    La solution est actuellement écrite mais encore en attente pour publication dans la Faq
    Voilà ce que j'ai fait pour le moment

    Citation Envoyé par neguib
    Comment selectionner toute la ligne lors d'un click dans une cellule ?
    La Classe System.Windows.Forms.DataGrid.HitTestInfo vous permet de déterminer la partie d'un contrôle DataGrid sur laquelle l'utilisateur a cliqué. Pour se faire, vous avez besoin d'utiliser la méthode HitTest du Datagrid que nous nommons ici pour l'exemple 'DG':
    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
     
    Imports System
    Imports System.Drawing
    Imports System.Windows.Forms
    '...
    Private Sub DG_MouseUp(ByVal sender As Object, ByVal e As MouseEventArgs) Handles DG.MouseUp
       'recupérer les coordonnées de la souris 
       Dim p = New Point(e.X, e.Y) 
       'déterminer la partie clickée du datagrid
       Dim HTI As DataGrid.HitTestInfo = DG.HitTest(p)
       'si c'est un type 'cellule' 
       If (HTI.Type = DataGrid.HitTestType.Cell) Then
          'définir la cellule en cours 
          DG.CurrentCell = New DataGridCell(HTI.Row, HTI.Column)
          'selectionner la ligne correspondante   
          DG.Select(HTI.Row) 
       End If 
    End Sub
    Classe DataGrid.HitTestInfo
    Pour le bien de ceux qui vous lisent, ayez à coeur le respect du forum et de ses règles

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

Discussions similaires

  1. [VB.net] Changer couleur ligne DataGrid
    Par bguihal dans le forum Windows Forms
    Réponses: 7
    Dernier message: 22/07/2016, 06h54
  2. [Struts-Layout] datagrid sélection ligne
    Par khaoula_14_05 dans le forum Struts 1
    Réponses: 4
    Dernier message: 03/12/2008, 09h36
  3. [VB.NET] [DataGrid] recuperer l'index d'une ligne
    Par graphicsxp dans le forum Windows Forms
    Réponses: 12
    Dernier message: 29/03/2005, 15h13
  4. [VB.NET] Recuperer numero ligne dans DATAGRID apres event
    Par stephane93fr dans le forum Windows Forms
    Réponses: 4
    Dernier message: 13/01/2005, 11h58
  5. [VB.NET] DataGrid : titre des colonnes sur deux lignes
    Par Lahouari dans le forum Windows Forms
    Réponses: 6
    Dernier message: 06/12/2004, 14h44

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