[c#] Refresh sur une form, récupération d'events impossible

Refresh sur une form, récupération d'events impossible [c#] - C#/.NET managed - Programmation

Marsh Posté le 13-02-2006 à 19:08:08    

Bonjour à tous!
 
Je présente rapidement mon probleme: j'ai un programme qui effectue des traitements sur des videos.  
Enfin qu'importe ce qu'il fait voici l'essentiel. Ma form principale lance des forms filles qui effectuent des traitements assez lourds  (une a la fois quand meme). Sur ces forms filles, j'affiche l'avancement du traitement (barre de progression, %age en label, etc) qui se rafraichit au debut mais tres vite le refresh se fige (je crontrole le refresh par un timer regulier).  
 
De plus, j'ai mis des controls sur la form fille (bouton, checkbox) sur lesquelles aucune interaction n'est possible une fois le traitement lancé.  
 
Or j'aimerai bien pouvoir agir sur la form. N'étant pas exactement un cador sous visual, je me demande comment resoudre ce probleme, s'il s'agit d'une bete propriete de la form ou s'il faut que je gere tout ca avec des threads.  
 
Si quelqu'un a un indice, je suis infiniment reconnaissant. :)

Reply

Marsh Posté le 13-02-2006 à 19:08:08   

Reply

Marsh Posté le 14-02-2006 à 09:29:00    

plusieurs solution:
 
Sous framework 1.x:
 
-Utilise un Application.Doevents() dans ta boucle de traitement (Methode VB oldSchool)
 
-Utilise les methode asynchrones BeginInvoke, etc... (-> MSDN) (Lourd mais efficace)
 
-Utilise une implémentation du BackgroundWorker Pour le framework 1.1 http://www.microsoft.com/belux/nl/ [...] ssing.mspx
(La meilleur solution à mon gout)
 
 
Sous framework 2.0:
 
-Utilise le backgroundWorker D'origine, ideal, efficace et simple à implémenter
 
 

Reply

Marsh Posté le 14-02-2006 à 09:35:39    

Ok, ca m'a bien l'air d'être ce que je recherche. Merci beaucoup!

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed