c# - Detect scroll on a WebBrowser control -


i have following code that, weirdly, works couple of seconds , stops working (my event handler method stops being called):

public partial class form1 : form {     private void form1_load(object sender, eventargs e)     {         webbrowser1.documentcompleted += new webbrowserdocumentcompletedeventhandler(webbrowser1_documentcompleted);         webbrowser1.navigate("google.com");     }      private void webbrowser1_documentcompleted(object sender, webbrowserdocumentcompletedeventargs e)     {         if (!webbrowser1.isbusy && webbrowser1.url == e.url && webbrowser1.readystate == webbrowserreadystate.complete)         {             htmlwindowevents_event windowevents = webbrowser1.document.window.domwindow htmlwindowevents_event;             windowevents.onscroll += new htmlwindowevents_onscrolleventhandler(windowevents_onscroll);         }     }      private void windowevents_onscroll()     {         htmldocument htmldoc = webbrowser1.document;         int scrolltop = htmldoc.getelementsbytagname("html")[0].scrolltop;         string text = scrolltop.tostring();     } } 

ok found solution:

    protected override void ondocumentcompleted(webbrowserdocumentcompletedeventargs e)     {         follow();         if (!isbusy && url == e.url && readystate == webbrowserreadystate.complete)         {             document.window.attacheventhandler("onscroll", docscroll);         }     } 

if attached way works ok (so far...). don't need use mshtml.


Comments

Popular posts from this blog

Add email recipient to all new Trac tickets -

400 Bad Request on Apache/PHP AddHandler wrapper -

php - Change action and image src url's with jQuery -