Communication entre 2 classes du meme namespace

Résolu
cs_Killan Messages postés 46 Date d'inscription jeudi 10 janvier 2002 Statut Membre Dernière intervention 5 février 2010 - 18 juil. 2004 à 00:19
cs_Crazyht Messages postés 1522 Date d'inscription mardi 18 décembre 2001 Statut Membre Dernière intervention 21 août 2010 - 18 juil. 2004 à 02:15
salut,

ma demande est sur un procédé de communication entre 2 classes du meme namespace mais je ne comprend pas

j'ai une form et dedan j'ai une textbox

de l'autre j'ai une classe server

j'aimerai que la classe server puisse afficher son état ds le textbox de la form...

mais pas moyen

la classe server ne voit la textbox que si celle ci est déclarée en static mais dès lors ds la form y a des prob de référence... et le prob tourne en rond...

avez-vous une idée, une solution, qqch ?

merci bcp

Killan
www.daaboo.net

5 réponses

cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
18 juil. 2004 à 00:36
tu peux par exemple :

passer le textbox en parametre au constructeur de ta classe serveur (et conserver cette valeur dans la classe), ainsi tu pourras y ecrire directement

ou

coder un event dans la classe serveur que tu declenches quand l'etat change, avec comme argument (ou un des arguments) l'etat dont il est question

Cocoricoooooooo !!!!
3
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
18 juil. 2004 à 00:51
tu declares un objet TextBox comme membre de ta classe Serveur

exemple :

class Serveur
{
// membres
private System.Windows.Forms.TextBox txtbox_to_update;

public Serveur(System.Windows.Forms.TextBox txtbox)
{
txtbox_to_update = txtbox;
}
}


enfin cette solution est ce que j'appellerais la solution de dépannage, parce que coté réutilisation et maintenance du code c'est pas le top

Cocoricoooooooo !!!!
3
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
18 juil. 2004 à 01:10
bon tant que j'y suis un petit exemple pour l'event (simple) :

dans la classe "Serveur" :
public class Serveur
{
// le delegate nécessaire pour définir l'event
public delegate void StatusChangedEventHandler(string status);

// l'event
public event StatusChangedEventHandler StatusChanged;

// un methode qui va declencher l'event
public void Methode()
{
...
if ( StatusChanged != null )
StatusChanged("blabla"); // déclenhement
...
}
}


pour s'abonner à l'event fourni par Serveur :
serveur.StatusChanged += new Serveur.StatusChangedEventHandler(serveur_StatusChanged);


la methode associée à l'event :
private void serveur_StatusChanged(string status)
{
textBox1.Text = status;
}


Cocoricoooooooo !!!!
1
cs_Killan Messages postés 46 Date d'inscription jeudi 10 janvier 2002 Statut Membre Dernière intervention 5 février 2010
18 juil. 2004 à 00:42
Comment pourrai-je garder la référence de la textbox...

la passer en paramètre je vois mais la garder pour quelle soit utilisable par les fonctions de la classe je vois pas ?

peux-tu m'éclaircir stp

et faire un event je vois se que tu veu dire mais c encore un peu hard pour moi lol

Killan
www.daaboo.net
0

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

Posez votre question
cs_Crazyht Messages postés 1522 Date d'inscription mardi 18 décembre 2001 Statut Membre Dernière intervention 21 août 2010 8
18 juil. 2004 à 02:15
Bien petit Coq 3 bonnes reponses sur 3 :)

A++

:-p Crazyht :)
MVP Visual C#.NET

[Admin Codes-Sources]
[Membre Developer-Association]
0
Rejoignez-nous