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 :

Lien hyperText dans Datagridview


Sujet :

Windows Forms

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 38
    Points : 22
    Points
    22
    Par défaut Lien hyperText dans Datagridview
    Bonjour,
    Je ne suis pas encore un utilisateur très aguerri de C# et forms, du coup j'ai quelques problèmes.

    J'ai rempli un DatagridView de la manière suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    foreach (System.IO.FileInfo fi in files)
                    {
                        int ligne;
                        ligne = dataGridView1.Rows.Add(fi.FullName.Substring(0, fi.FullName.Length - (fi.Name.Length + 1)), fi.Name);
                        //dataGridView1.Rows[ligne].Cells[1].LinkText(fi.FullName);
     
                    }
    Je voudrais que la seconde colonne de mon gridView soit un lien vers les fichiers que j'y ai mis.
    J'ai transformé la colonne correspondante en une DataGridViewLinkColumn les noms de fichier apparaissent bien sous la forme de lien, mais ils ne sont pas sensibles au clic.
    Ma question est : comment indiquer l'adresse du lien (nom complet : répertoire + nom du fichier) ?
    Quelque chose de ressemblant à la dernière ligne de ce que j'ai mis dans l'exemple de code.
    Par avance merci de vos réponses.

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

    Informations professionnelles :
    Activité : Consultant informatique

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

    Voici ce que dit la MSDN :
    Pour répondre aux clics de l'utilisateur sur le lien, gérez l'événement DataGridView.CellContentClick. Vous pouvez également utiliser l'événement DataGridView.CellClick pour répondre aux clics effectués dans la cellule.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 38
    Points : 22
    Points
    22
    Par défaut Merci
    Cela m'a mis sur la piste, je suis arrivé à faire qq chose d'assez proche de ce que je veux avec le code suivant.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
            {
                if (e.ColumnIndex == 2)
                {
                    String file = dataGridView1.Rows[e.RowIndex].Cells[1].Value.ToString() + "\\" + dataGridView1.Rows[e.RowIndex].Cells[2].Value.ToString();
                    System.Diagnostics.ProcessStartInfo psi = new System.Diagnostics.ProcessStartInfo(file, "");
                    System.Diagnostics.Process.Start(psi);
                }
     
            }
    Comment serait'il possible de plus de tester si par exemple la touche CTRL est enfoncée ?

    Par avance merci.
    A+

  4. #4
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    if (e.ColumnIndex == 2 && Control.ModifierKeys == Keys.Control)
    " Le croquemitaine ! Aaaaaah ! Où ça ? " ©Homer Simpson

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 38
    Points : 22
    Points
    22
    Par défaut MERCI
    C'est exactement ce que je voulais.
    A+

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

Discussions similaires

  1. lien hypertexte dans une zone de liste
    Par corwin44 dans le forum Access
    Réponses: 1
    Dernier message: 02/11/2005, 11h48
  2. lien hypertexte dans le corps d'un mailto
    Par ludovik dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 22/10/2005, 16h10
  3. [MFC] liens hypertexte dans un CRichEditCtrl
    Par hiko-seijuro dans le forum MFC
    Réponses: 1
    Dernier message: 15/06/2005, 12h14
  4. Réponses: 3
    Dernier message: 26/10/2004, 07h31
  5. lien hypertexte dans une anim flash
    Par vedder dans le forum Flash
    Réponses: 17
    Dernier message: 14/01/2004, 14h11

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