Cet article est un article miroir de traduction automatique, veuillez cliquer ici pour accéder à l’article original.

Vue: 16327|Répondre: 5

[WinForm] Comment fonctionnent les threads en arrière-plan les pages web encadrantes

[Copié le lien]
Publié sur 22/01/2019 21:43:08 | | |
Tout d’abord, si j’exécute l’instruction suivante avec un thread UI, il n’y a aucun problème
        vide privé button9_Click_1(object sender, EventArgs e)
        {
            mshtml. HTMLDocument doc = GetIe(« URL ») ; GetIe est une méthode permettant d’obtenir des documents IE à une URL spécifiée ;
            doc.frames.item(0).document.all.item(« txtLimits »).innerText = « 123 » ;
        }
Cependant, si je le mets dans un thread en arrière-plan, il y a une exception : InvalidCastException, la conversion spécifiée est invalide, le code est le suivant
   void asynchrone privé button9_Click_1(object sender, EventArgs e)
        {
            Action Action = nouvelle Action (test12) ;
            attendre Task.Run (action) ;
        }
        Examen privé nul12()
        {
            mshtml. HTMLDocument doc = GetIe(« URL ») ;
            doc.frames.item(0).document.all.item(« txtLimits »).innerText = « 123 » ;
        }

。。。 Comment écrire la bonne ?




Précédent:Notes d’étude du jour sur C#
Prochain:« Senran Kagura Burst : Re :Newal » version gratuite chinoise et anglaise
Publié sur 23/01/2019 08:03:26 |
Publié sur 23/01/2019 09:08:36 |

Score

Nombre de participants1MO+1 contribuer+1 Effondrement raison
crystal0330 + 1 + 1 Très puissant !

Voir toutes les notes

 Propriétaire| Publié sur 23/01/2019 22:04:56 |

Merci beaucoup, le problème est résolu, c’est juste que je suis nouveau dans l’asynchrone et je ne comprends pas pourquoi c’est écrit ainsi, ce serait plus parfait si vous pouviez l’expliquer.
 Propriétaire| Publié sur 24/01/2019 06:38:37 |
Ce post a été modifié pour la dernière fois par crystal0330 le 24-01-2019 à 06:55

Bonjour, j’ai aussi rencontré un problème à l’avenir :



ClickYes est une méthode qui permet de déplacer la souris sur le bouton OK dans la fenêtre pop-up et de cliquer deux fois



Maintenant, j’ai deux problèmes :
1. Écrivez comme ceci,ClickYes ne peut que laisserLe deuxième clic de la souris, c’est-à-dire que le premier clic n’est pas exécuté, s’il est dans le fil d’interface utilisateur, il peut être cliqué deux fois ;
2. J’ai atteint un point d’arrêt dans la méthode ClickYes, et après l’interruption du programme, j’ai appuyé à nouveau sur F11, et je n’ai pas exécuté le code suivant dans ClickYes. Alors, comment déboguer étape par étape ?

 Propriétaire| Publié sur 24/01/2019 14:33:03 |

Bonjour, je viens d’essayer à nouveau, et quand j’écris comme ça, l’interface winform est à nouveau bloquée, ce qui a le même effet que d’utiliser directement le fil d’interface utilisateur...
Démenti:
Tous les logiciels, supports de programmation ou articles publiés par Code Farmer Network sont uniquement destinés à l’apprentissage et à la recherche ; Le contenu ci-dessus ne doit pas être utilisé à des fins commerciales ou illégales, sinon les utilisateurs assumeront toutes les conséquences. Les informations sur ce site proviennent d’Internet, et les litiges de droits d’auteur n’ont rien à voir avec ce site. Vous devez supprimer complètement le contenu ci-dessus de votre ordinateur dans les 24 heures suivant le téléchargement. Si vous aimez le programme, merci de soutenir un logiciel authentique, d’acheter l’immatriculation et d’obtenir de meilleurs services authentiques. En cas d’infraction, veuillez nous contacter par e-mail.

Mail To:help@itsvse.com