Questo articolo è un articolo speculare di traduzione automatica, clicca qui per saltare all'articolo originale.

Vista: 16327|Risposta: 5

[WinForm] Come funzionano i thread di background le pagine web a cornice

[Copiato link]
Pubblicato su 22/01/2019 21:43:08 | | |
Prima di tutto, se eseguisco la seguente istruzione con un thread UI, non c'è problema
        void privato button9_Click_1(object sender, EventArgs e)
        {
            mshtml. HTMLDocument doc = GetIe("URL"); GetIe è un metodo per ottenere documenti IE a un URL specificato;
            doc.frames.item(0).document.all.item("txtLimits").innerText = "123";
        }
Tuttavia, se lo inserisco in un thread in background, lancia un'eccezione: InvalidCastException, la conversione specificata è invalida, il codice è il seguente
   void asincrono privato button9_Click_1(object sender, EventArgs e)
        {
            Azione azione = nuova Azione (test12);
            attendere Compito.Run (azione);
        }
        Test privato null12()
        {
            mshtml. HTMLDocument doc = GetIe("URL");
            doc.frames.item(0).document.all.item("txtLimits").innerText = "123";
        }

。。。 Come scrivere quello giusto?




Precedente:Appunti di studio di oggi su C#
Prossimo:"Senran Kagura Burst: Re:Newal" versione gratuita cinese e inglese
Pubblicato su 23/01/2019 08:03:26 |
Pubblicato su 23/01/2019 09:08:36 |

Punteggio

Numero di partecipanti1MB+1 contribuire+1 Collasso ragione
crystal0330 + 1 + 1 Molto potente!

Vedi tutte le valutazioni

 Padrone di casa| Pubblicato su 23/01/2019 22:04:56 |

Grazie mille, il problema è risolto, è solo che sono nuovo nell'asincronismo e non capisco perché sia scritto così, sarebbe più perfetto se potessi spiegarlo.
 Padrone di casa| Pubblicato su 24/01/2019 06:38:37 |
Questo post è stato modificato l'ultima volta da crystal0330 il 24-1-2019 alle 06:55

Ciao, anch'io ho incontrato un problema in futuro:



ClickYes è un metodo che permette di spostare il mouse sul pulsante OK nella finestra pop-up e cliccare due volte



Ora ho due problemi:
1. Scrivi così,ClickSì può solo permettereIl secondo clic del mouse, cioè il primo clic non viene eseguito; se si trova nella discussione UI, può essere cliccato due volte;
2. Ho raggiunto un punto di interruzione nel metodo ClickYes e, dopo che il programma è stato interrotto, ho premuto di nuovo F11 e non ho eseguito il codice successivo in ClickYes. Quindi, come fare il debug passo dopo passo?

 Padrone di casa| Pubblicato su 24/01/2019 14:33:03 |

Ciao, ho appena riprovato, e quando scrivo così, l'interfaccia winform si blocca di nuovo, che è lo stesso effetto che si usa direttamente il thread dell'interfaccia...
Disconoscimento:
Tutto il software, i materiali di programmazione o gli articoli pubblicati dalla Code Farmer Network sono destinati esclusivamente all'apprendimento e alla ricerca; I contenuti sopra elencati non devono essere utilizzati per scopi commerciali o illegali, altrimenti gli utenti dovranno sostenere tutte le conseguenze. Le informazioni su questo sito provengono da Internet, e le controversie sul copyright non hanno nulla a che fare con questo sito. Devi eliminare completamente i contenuti sopra elencati dal tuo computer entro 24 ore dal download. Se ti piace il programma, ti preghiamo di supportare software autentico, acquistare la registrazione e ottenere servizi autentici migliori. In caso di violazione, vi preghiamo di contattarci via email.

Mail To:help@itsvse.com