Je trouve tjs pas de solution pour mon blem "A l'aide"

Signaler
Messages postés
108
Date d'inscription
samedi 9 avril 2005
Statut
Membre
Dernière intervention
6 décembre 2007
-
Messages postés
1024
Date d'inscription
mardi 4 février 2003
Statut
Membre
Dernière intervention
7 juin 2010
-
Bon j'explique tout:

J'ai le même namespace par tout

je suis dans la class 1 (class fraim ok)

et je cherche à appler  methode() qui de trouve dans class 2 et et cette methode()  cherche un tableau dans la class 3

class2
{
   class 3 
         {
         public class TaskEvent : System.EventArg
         {

               double[,] data,
               
               public TaskEventArg (double[,] d)
               { data = d}
               public double [,] GetData()
               { return data}
          }

   //alors je crée une methode static :

   public static void Méthode(object sender, TaskEventArgs e)
   {
      double[,] data = e.GetData();
    }
}

finalement dans l'evenement click (class1) je veux appler cette methode autrement dit recuperer mon  tableau data

A l'aide SVP, si je peux le faire autrement dites le moi
Merci

RED1

6 réponses

Messages postés
1024
Date d'inscription
mardi 4 février 2003
Statut
Membre
Dernière intervention
7 juin 2010
62
Ok, je ne comprend pas bien ce que tu veux faire, et la manière à la'ir assez compliquée.

Par contre, je peux t'aider pour accéder à Methode depuis la class1.

déclare les class2 et 3 comme public (ou internal si tu veux qu'elles ne soient pas accessible ailleurs).
A partir de la class1, tu peux alors faire class2.class3.Methode(...)

Un conseil, évite les accents dans les nom de classe, méthode ou variable.

Amicalement, SharpMao
Messages postés
2368
Date d'inscription
mardi 17 avril 2001
Statut
Modérateur
Dernière intervention
26 décembre 2007
20
Et puis empiler les classes de cette manière c'est très moche.

::|The S@ib|:: MVP C#.NET
Messages postés
108
Date d'inscription
samedi 9 avril 2005
Statut
Membre
Dernière intervention
6 décembre 2007

Pour compléter :

dans l'évenemnt click
private void btn_click (object sender , System.EventArgs e)
{
   //appel de la methode...
   //je l'appel comm suivant
   class2......methode (sender , e)
 }

là j'ai un message d'erreur (impossible de convertir 'System.EventArgs ' en '.....TaskEventArgs'
autrement je l'appel comment cette methode !!!!!!!!!!!!!!!!!!!!!!!!!!!
Merci

RED1
Messages postés
1024
Date d'inscription
mardi 4 février 2003
Statut
Membre
Dernière intervention
7 juin 2010
62
Comme je l'ai dit plus haut, essaie de nous expliquer le but de ton programme, il y a peut-être une manière plus simple de procéder.

Amicalement, SharpMao
Messages postés
108
Date d'inscription
samedi 9 avril 2005
Statut
Membre
Dernière intervention
6 décembre 2007

Si tu peux me dire comment je recuper le tableaux data dans cette classe suite à un evenement click dans une autre classe c réglé pour moi:
         public class TaskEvent : System.EventArg
         {

               double[,] data,
               
               public TaskEventArg (double[,] d)
               { data = d}
               public double [,] GetData()
               { return data}
          }

RED1
Messages postés
1024
Date d'inscription
mardi 4 février 2003
Statut
Membre
Dernière intervention
7 juin 2010
62
Hello,

Tu a montré cette méthode :

private void btn_click (object sender , System.EventArgs e)
{
   //appel de la methode...
   //je l'appel comm suivant
   class2......methode (sender , e)
 }

le problème, c'est que tu peux faire passer un TaskEventArgs pour un EventArgs, mais pas le contraire.
Comme la méthode click prend en paramètre un  EventArgs, tu est obligé de faire un new TaskEventArgs.
Le problème, c'est que ton comme tu viens de l'instancier, tu connais déjà le contenu de Data, à quoi sert donc méthode ?

Je suis désolé, mais je ne comprend toujours pas ce que tu veux faire de cette manière, une explication plus globale du problème serait la bienvenue (à quoi sert data, ce que fait réellement methode, car là, rien...).

Amicalement, SharpMao