c# - mshtml how to hook into document's readystatechange event -


i'm converting ie window's handle mshtml.htmldocumentclass using way described here.

there couple of weird things happening here.

  1. when hook onreadystatechange event frame document (get frame using document.getelementbyid , hook frame onreadystatechange), event gets fired once.

  2. problem #1 disappears when detach event handler , reattach same method.

  3. the main problem , after doing web document freezes, textboxes don't receive focus , buttons can clicked appear read buttons text type controls become readonly, after digging through problem little , found behaviour appears hook frame document's onreadystatechange event. detaching event brings page normal behaviour.

here's code i'm using.

this.guidedocument = this.gethtmldocumentbywindowhandle(handle) mshtml.htmldocumentclass; var frame = (this.guidedocument.frames.item(0) mshtml.ihtmlwindow2).frames.item(1) mshtml.ihtmlwindow2; var framedocument = frame.document mshtml.htmldocumentclass; framedocument.htmldocumentevents2_event_onreadystatechange += framedocument_htmldocumentevents2_event_onreadystatechange;   void framedocument_htmldocumentevents2_event_onreadystatechange(ihtmleventobj pevtobj) {     framedocument.htmldocumentevents2_event_onreadystatechange -= framedocument_htmldocumentevents2_event_onreadystatechange;     framedocument.htmldocumentevents2_event_onreadystatechange += framedocument_htmldocumentevents2_event_onreadystatechange;     this.disablebutton("btnclose", string.empty, framedocument);     } 

i'm not sure what's missing here, see wrong here, or alternate approach. web page composed of many framesets , frames. insights gr8 help.

i somehow feel, requires base.onreadystatechange thing, don't know if there 1 available. or other way let original event called etc..

thanks,


Comments

Popular posts from this blog

apache - Remove .php and add trailing slash in url using htaccess not loading css -

inno setup - TLabel or TNewStaticText - change .Font.Style on Focus like Cursor changes with .Cursor -