C# / passage de parametre par accesseur de la classe principale à un autre class [Résolu]

Messages postés
11
Date d'inscription
mercredi 31 octobre 2007
Dernière intervention
4 mars 2011
- - Dernière réponse : Lune03
Messages postés
11
Date d'inscription
mercredi 31 octobre 2007
Dernière intervention
4 mars 2011
- 29 août 2010 à 23:20
Bonjour,

Sous Visual C# 2008 :
J'ai plusieurs classe dont la principale (Frame du programme) dérive de 'Form' appelé 'Form1', celle-ci est instanciée au lancement de l'application dans le fichier "Programm.cs" par l'instruction "Application.Run(new Form1());", je n'ai donc pas le nom de l'objet ainsi créé.

Dans une autre classe, je voudrais recupérer une variable privée de ma classe Form1 (dont je ne connais pas le nom de l'objet ...), j'ai donc écrit un accesseur 'Get' mais voila comme je ne connais par la reference de l'instance de ma classe principale Form1, je ne sais pas comment faire pour y accéder ?

Ma question est sans doute basique mais je bute.

Cordialement
Afficher la suite 

Votre réponse

4 réponses

Meilleure réponse
Messages postés
835
Date d'inscription
samedi 15 novembre 2008
Dernière intervention
14 janvier 2017
3
Merci
Bonsoir

Si form1 n'est instanciée qu'une seule fois, et toujours au lancement du programme
mets ta variable Public static, comme ça tu pourra y avoir accès depuis l'exterieur.

Bob
C# is amazing, enjoy it!

Merci cs_Robert33 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 97 internautes ce mois-ci

Commenter la réponse de cs_Robert33
Messages postés
11
Date d'inscription
mercredi 31 octobre 2007
Dernière intervention
4 mars 2011
0
Merci
Bonjour,

Merci pour votre réponse.
Avec la déclaration 'static', dans le cas où l'application serais lançais plusieurs fois dans l'OS, je craignais qu'il puisse y avoir un conflit de partage de mémoire, mais à bien y réfléchir, la porté d'une variable 'static' doit s'arrêter à l'application et non au système.

Bien cordialement
Pascal
Commenter la réponse de Lune03
Messages postés
835
Date d'inscription
samedi 15 novembre 2008
Dernière intervention
14 janvier 2017
0
Merci
Bonsoir

En effet tu as raison, la porté est l'application, donc pas de soucis.
En general, je mets mes variables static globales dans une class spécifique, ou directement dans la class du program.cs ça me parait plus "propre" que dans un class de type form.

Bob
C# is amazing, enjoy it!
Commenter la réponse de cs_Robert33
Messages postés
11
Date d'inscription
mercredi 31 octobre 2007
Dernière intervention
4 mars 2011
0
Merci
Bonsoir,

je prends note de ces bons conseils : de la rigueur dans l'écriture d'un programme joue en faveur de sa lisibilité et de fait limite sans doute les risques de bug ...

Merci
Pascal
Commenter la réponse de Lune03

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.