begin process at 2010 02 10 13:08:34
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C#

 > 

Mono

 > 

Général

 > 

Operation interThread non valide : utilisation des delegates


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Operation interThread non valide : utilisation des delegates

mercredi 27 février 2008 à 20:48:37 | Operation interThread non valide : utilisation des delegates

Zaltez

Bonsoir,
J'aurai besoin d'un précision sur l'utilisation des delegates en c#.

j'utilise les delegates pour rafraichir l'avancement du progressbar de cette façon :

objWebclient.DownloadProgressChanged += new DownloadProgressChangedEventHandler(ProgressBarState);
objWebclient.DownloadFileCompleted += new AsyncCompletedEventHandler(DownloadCompleted);

qui appel donc les methodes suivantes :

       private void ProgressBarState(object sender, DownloadProgressChangedEventArgs e)
        {
            this.Invoke(objProgressBarDelegateInProgress, new object[] { e.ProgressPercentage });
        }

        private void DownloadCompleted(object sender, AsyncCompletedEventArgs e)
        {
            comptVideo = comptVideo + 1;
            this.Invoke(objProgressBarDelegateCompletedHandler);
            if (tablength == comptVideo)
            {
                MessageBox.Show("Download Completed");
            }
            objThreadDownloadVideo = null;//libere le thread
            b_downloadCompleted = true;
        }

Les delegates ci dessous sont appelés par les delegates des événements de l'objet objWebclient (this.Invoke)

 private delegate void ProgressBarDelegateInProgressHandler(int percent);
 private ProgressBarDelegateInProgressHandler objProgressBarDelegateInProgress;

 private delegate void ProgressBarDelegateCompletedHandler();
 private ProgressBarDelegateCompletedHandler objProgressBarDelegateCompletedHandler;

Cette solution marche mais ce qui me semble étonnant c'est que je sois obligé de passer par des delegates pour appeler d'autre delegate sinon j'ai une erreur opération interThread non valide :(

J'aurai voulu savoir si c'était normal de procéder de cette facon .

samedi 1 mars 2008 à 22:40:58 | Re : Operation interThread non valide : utilisation des delegates


Cette discussion est classée dans : private, void, valide, delegates, interthread


Répondre à ce message

Sujets en rapport avec ce message

pb de variable non definie [ par kaiwoo ] [STAThread] static void Main() { Application.Run(new Form1()); } private void textBox1_TextChanged(object sender, System.EventArgs e) { } pr TcpClient et TcpListener une est dérivée l'autre incluse dans une class [ par Trollien ] Bonjour,je commence à pété un cable car je ne comprend pas trop ce qui ce passe alors voici les deux sources et un bout de code de l'appli.Si qqn a un Remplissage DDL en temps réel [ par TmDsbsBs ] Bonjour,J'ai plusieurs DDL qui sont initialement remplies avec des requetes simples du type "SELECT champs FROM matable". Et quand je modifie la valeu listbox et numericUpDown [ par locus ] Bonjour,je suis débutant c#, je cherche à savoir comment récupérer le texte sélectionné d'un listbox. Si quelqu'un pouvez m'aidez, cela me sera trés u Modifier une textbox dans une class [ par yanis7518 ] Salut a tousvoila je voudrai savoir si il est possible de modifier la valeur d'une textbox à partir d'une fonction appartenant a une class. Et si oui draganddrop de label [ par psykostik ] Bonjour, j'aimerai faire déplacer un label vers un tableau de jeu que j'ai crée or j'ai deux problèmes : Premièrement qu'elle forme serait la plus in Problème D'impression [ par maxdesu ] bonjour a tous j'ai un probleme d' impression desolé car il y a des autres sujets que j'ai deja aperçu dont celui la http://www.csharpfr.com/codes/TUT A propos de backgroundWorker [ par sliverman ] Bonjour à tous, alors voila j'essaye de faire des exemple de code pour comprendre le composant backgroundWorker.Donc j'ai un ListView, un progressbar Appli qui tourne normal sur Visual Studio 2005, et plante quand je lance l'exe seul [ par duteux ] Bonjour à tous, J'ai ecrit une application Windows en C# qui parcour les fichiers *.eml pour en extraire toutes les adresses mails présentes. Quand Problème avec la gestion des thread: thread appelé deux fois seulement au lieu de 15 :( [ par AmK ] Bonjour,J'ai un gros problème avec l'utilisation des thread!En fait, ce qui se passe c'est que j'appelle un thread 15fois ! ( 15positions successives


Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,296 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales