23. januar 2006 - 10:11Der er
11 kommentarer og 1 løsning
WebBrowser komponent - vent til siden er loadet
Hej,
Jeg står med et problem jeg simpelthen ikke kan løse (det er garanteret mega nemt - men jeg har set mig helt blind på det...).
Jeg har en webbrowser komponent på en form. Jeg klikker på en knap, hvorefter der bliver navigeret til en URL. Efter jeg har sagt axWebBrowser1.Navigate2(ref objURL), vil jeg gerne vente på at html'en kan læses.
Sammenfatning: Jeg har en funktion der skal returnere en værdi, der findes i et html-dokument. En webbrowser komponent vil navigere til den relevante url - hvorefter der skal ventes på at html'en for siden kan læses.
>hmmm... går ikke helt... Kan du sige hvorfor ? hvad er det der ikke virker ?
Du skal være opmærksom på at DocumentComplete eventet fyres flere gange... så du skal kun køre din "document complete" kode inde i If sætningen: private void WebBrowser_DocumentComplete(object sender, AxSHDocVw.DWebBrowserEvents2_DocumentCompleteEvent e) { IHTMLDocument2 doc = m_AxWebBrowser.Document as IHTMLDocument2; string str = doc.readyState; Debug.WriteLine("WebBrowser_DocumentComplete start webbrowser readystate = " + str); if(str == "complete") { if (searchHTML) { foundUID = findUID(); searchHTML = false; }
det jeg mente var at DocumentComplete eventet fyres uden at det nødvendigvis betyder at hele dokumentet er færdig loadet. Du kan kun være helt sikker når doc.readyState == "complete"
både og... trækker lidt meget processorkraft... men hva' fa'en...
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.