Je souhaite que mon agent d'arrière-plan ajoute des éléments à une zone de liste, il semble le faire lors du débogage, mais la liste ne montre pas les valeurs. Je soupçonne que cela a quelque chose à voir avec l'ajout d'éléments à l'intérieur du thread de travail d'arrière-plan, dois-je les ajouter à un tableau, puis remplir la zone de liste à partir du tableau pendant backgroundWorker1_RunWorkerCompleted
?C# Puis-je ajouter des valeurs à une liste avec un fil d'arrière-plan?
Merci pour l'aide.
Un inconvénient de ce procédé (ajout d'éléments, un par un) serait que l'on ne peut pas joindre population listbox à l'intérieur BeginUpdate/EndUpdate. –
J'ajoute 500k articles à la listbox, mais c'est toujours l'interface utilisateur qui bloque le composant bw. des idées pourquoi? – Smith
Dans ce cas, je vous recommande de ne pas ajouter les éléments un par un, mais peut-être signaler la progression seulement tous les 100 ou 1000 itérations avec un tas d'éléments à ajouter. L'événement ProgressChanged doit être appelé dans le thread principal, donc l'appeler gèle souvent le gui. –