Hi, I've got an Internet Explorer control running along side a Mozilla
one in a c# app, I want the user to be able to type CSS in a text box
and it update instantly in both IE and Moz, so I'm using this code (IE
= WebBrowser Control, moz = axMozilla control, css = RichTextBox
Control):
newCSSLoc = System.IO.Directory.GetCurrentDirectory() + "\\tmpCSS.css";
css.SaveFile(newCSSLoc, RichTextBoxStreamType.PlainText);
IE.Document.GetElementsByTagName("LINK")[0].SetAttribute("href",
"file:///" + newCSSLoc);
mshtml.IHTMLDocument2 oDoc;
oDoc = (mshtml.IHTMLDocument2)moz.Document;
mshtml.IHTMLElementCollection oColl;
oColl = (mshtml.IHTMLElementCollection)oDoc.all;
foreach (mshtml.IHTMLElement ele in oDoc.all)
{
ele.setAttribute("href", "file:///" + newCSSLoc, 0);
}
(Obviously this code actually changes the href (or adds one) of every
single element - but I'm just using this is an example).
This works fine for IE (it updates instantly) but Mozilla doesn't, I
have to do moz.refresh(), which is messy - is there any other way of
forcing the mozilla control to re-render without it getting the HTML
again?
As far as i understand it, IE renders again each time the stylesheet
ref is changed, whereas mozilla doesn't.
Help!
_______________________________________________
mozilla-embedding mailing list
[email protected]
http://mail.mozilla.org/listinfo/mozilla-embedding