Evenement

inesmtibaa Messages postés 6 Date d'inscription samedi 10 mai 2008 Statut Membre Dernière intervention 14 mai 2008 - 12 mai 2008 à 12:32
WishhhMaster Messages postés 327 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 10 avril 2010 - 14 mai 2008 à 23:42
Bonjour
J'ai plusieurs groupbox, crée dynamiquement, contiennent chacune un bouton et une image.
Je veux que l'effet d'un click sur un bouton se produit sur l'image de même groupbox, mais l'effet se produit sur la derniére image du dernier groupbox.

5 réponses

WishhhMaster Messages postés 327 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 10 avril 2010 8
12 mai 2008 à 14:39
Salut,

Tu dois d'abord trouver quel picture box correspond au bouton cliqué.
Je pense que tu dois faire quelque chose du genre (assumant que tu as donné un nom à tes picture boxes)

private void btn_Click(object sender, EventArgs e)
        {
             GroupBox gbParent = ((Button)sender).Parent;
              PictureBox pb = gbParent.Controls.Find(nomPictureBox, true);
              if(pb!=null)
              {
                // fait ton truc
                }

        }
0
inesmtibaa Messages postés 6 Date d'inscription samedi 10 mai 2008 Statut Membre Dernière intervention 14 mai 2008
13 mai 2008 à 11:49
Bonjour,

Le code précédent produit des erreurs, j'essai de le corriger de le façon suivante:

private void butto_precedent_Click(object sender, EventArgs e)

        {

            GroupBox groupBox = (GroupBox)((Button)sender).Parent;

            Control[] pb = groupBox.Controls.Find("pbximage", true);

            if (pb != null)

            {
.................................

mais le problème persiste.
0
WishhhMaster Messages postés 327 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 10 avril 2010 8
13 mai 2008 à 12:11
Salut,
Essaye quelque chose du genre (pas testé):

Control[] ctrlArray = groupBox.Controls.Find("pbximage", true);
if(ctrlArray.Length!=0)
{
   PictureBox pb = ctrlArray[0] as PictureBox;//assume que tu n'as qu'une picturebox par groupbox
   if(pb!=null)
   {
      //...
   }
}
0
inesmtibaa Messages postés 6 Date d'inscription samedi 10 mai 2008 Statut Membre Dernière intervention 14 mai 2008
14 mai 2008 à 16:10
Salut
J'essai avec cette solution, mais le Control[] est vide
SVP, est ce que tu a une autre idée.
Merci.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
WishhhMaster Messages postés 327 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 10 avril 2010 8
14 mai 2008 à 23:42
Salut,

Ca marche bien chez moi. Vérifie bien que:
- ton PictureBox est bien dans le groupbox
- le nom que tu utilises ("pbximage") correspond bien au nom que tu as donné a ton PictureBox quand tu l'as crée dynamiquement.

Utilise le débugger pour visualiser les controls présents dans ton groupbox (vérifie ce qu'il y a dans groupbox.Controls et que son nom est bien "pbximage")

A part ça je ne vois pas pourquoi ça ne marcherait pas.
0
Rejoignez-nous