Accès d'objet du Main à partir d'une classe - C#/.NET managed - Programmation
Marsh Posté le 12-08-2005 à 18:13:16
plusieurs solution possibles:
premiere, efficace, mais pas tres propre:
tu passe la ref du formulaire principal dans le constructeur de ta classe, tu l'attribue à une propriété de ta classe, tu declare ton label en public dans ton formulaire et tu accede au label dans ta boucle par un
Code :
|
L'autre solution, plus classe (evident pour un langage objet )
Tu crée un evennement dans ta classe UploadFtp puis un delegué, dans ta classe Main.cs, lorsque tu instancie ton objet de UploadFtp , tu ajoute au eventhandler le gestionnaire que tu veux utiliser pour mettre à jour ton label et le tour est joué
Regarde donc dans la doc MSDN pour bien comprendre ce concept d'evennement/delegué qui est TRES puissant en C#
Marsh Posté le 13-08-2005 à 23:30:49
Ouaw, Evenements / délégués
J'avai jamais entendu parlé de ça, très intéressant effectivement, bien qu'un peu compliqué au début
Après 1h de théorie j'ai enfin réussi, merci pour la piste
Marsh Posté le 09-08-2005 à 17:56:05
Je m'explique.
Je suis entrain de créer un logiciel spécifique pour redimensionner les images + upload de ces dernières.
Redimenssionnement nikel, upload nikel sauf... l'affichage du nombre d'octects en cours d'upload.
Problème :
J'ai un objet LabelUpload sur le Main (contenu dans Main.cs cad mon interface)
J'ai une class UploadFtp (contenu dans UploadFtp.cs)
dans cette classe il y a la fonction Upload() qui contient une boucle pour l'upload qui est la suivante :
Et j'aimerai changer dans cette boucle la valeur de Label.Upload.Text contenu dans Main...
Choses déjà essayées :
- J'ai essayé déclaré un objet bla de la class Main dans la class FtpUpload (Main bla = new Main() + LabelUpload en public) : erreur lors de la compilation lors de la définition de l'objet FtpUpload dans le main (aucunes précisions)
- J'ai mis cet objet directement dans la fonction upload() : plus d'erreur mais rien ne s'affiche
Je pense que c'est un peu barbare de créer un objet "bla" de Main... quelqu'un a t'il une solution pour accéder à un objet du Main a partir d'une classe ?