[Débutant] Ouverture d'un contextmenustrip sur un datagridview [Résolu]

Signaler
Messages postés
14
Date d'inscription
dimanche 14 octobre 2007
Statut
Membre
Dernière intervention
14 avril 2008
-
Messages postés
1
Date d'inscription
mercredi 27 juin 2007
Statut
Membre
Dernière intervention
11 mai 2009
-
Bonjour

Comme je l'ai dit dans mon précédent message je suis débutant en C# et en programmation en général. Je travaille avec visual studio 2008.

Voila j'ai un datagridview contenant certaines informations contenus dans une table d'un dataset DS. Lorsque je fais un clic droit sur une cellule du datagridview je souhaiterais avoir un contextmenustrip qui souvre avec plusieur bouton dont visualiser permettant d'afficher l'ensemble des informations relatifs à l'enregistrement où l'utilisateur à cliquer.

J'ai réaliser un code pour l'événement clique droit de la souris sur le datagridview mais il semble ne marcher qu'une fois sur 3 (et encore je suis gentil)

voici ce code :

private void dataGridView1_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e)
{
if (e.Button == MouseButtons.Right)
{
dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Selected = true;
dataGridView1.Rows[e.RowIndex].ContextMenuStrip = this.contextMenuStrip1;
}
}

Si quelqu'un a une solution à ce problème, elle serait la bienvenue.

Merci.

6 réponses

Messages postés
97
Date d'inscription
lundi 2 mai 2005
Statut
Membre
Dernière intervention
21 mars 2008
3
Salut,

il faut que tu le rattache a ton contextMenuStrip a dataGridView "de façon permanente", c-a-d que dans ton constructeur de ta form tu doit mettre :

this.dataGridView1.ContextMenuStrip = this.contextMenuStrip1;

et apres c'est bon il s'affichera automatiquement lors d'un click droit sur ton tableau
Messages postés
97
Date d'inscription
lundi 2 mai 2005
Statut
Membre
Dernière intervention
21 mars 2008
3
(la première ligne il faut comprendre "il faut que tu rattache ton  ...") désolé
Messages postés
14
Date d'inscription
dimanche 14 octobre 2007
Statut
Membre
Dernière intervention
14 avril 2008

Merci kassidy, cela fonctionne effectivement beaucoup mieux comme ca. Cependant,
je ne vois pas bien pourquoi ce morceau de code était nécessaire pour ce que je voulais faire et pourquoi il n'est pas généré automatiquement comme le reste du constructeur.

En tout cas merci bien.
Messages postés
97
Date d'inscription
lundi 2 mai 2005
Statut
Membre
Dernière intervention
21 mars 2008
3
comme tu utilise visual studio, tu peu, dans le concepteur de vue, ajouter le contextMenuStrip à ton dataGridView "manuellement" (via la fenêtre propriété). De cette façon le code s'ajoutera automatiquement dans le InitializeComponent().

(et désolé pour mon premier message j'ai écris n'importe comment)
Messages postés
14
Date d'inscription
dimanche 14 octobre 2007
Statut
Membre
Dernière intervention
14 avril 2008

OK
pas de soucis. Le principal c'est que je t'ai compris.
Merci encore.
Messages postés
1
Date d'inscription
mercredi 27 juin 2007
Statut
Membre
Dernière intervention
11 mai 2009

Est il possible de faire une sélection multiple avec un contextmenustrip ?

Je perd les sélections multiples quand je fais clic droit, y'a t il moyen de configurer une option du contexte menu pour qu'il garde tous les items sélectionnées ?