I've just installed ie9 and now my program using mshtml's IHTMLStyle no longer can be casted.
so I pretty much had
class Style
{
mshtml.HTMLStyle mStyle;
Style(mshtml.IHTMLStyle style)
{
mStyle = style as mshtml.HTMLStyle
}
}
and it used to work, but now mStyle always ends up being null. I tried doing an explicit cast, i.e.开发者_StackOverflow社区 (mshtml.HTMLStyle)style, but that ended up not working because it says that the actual type of style is a System.__ComObject when I know it used to cast just fine before I had ie9 installed.
does this sound like anything anyone else has run into?
Use later binding with 'dynamic' like this :
dynamic mStyle;
void Stylex(mshtml.IHTMLStyle style)
{
mStyle = style;
string test = "";
//don't work
test = (mStyle as IHTMLStyle).border;
//work fine
test = mStyle.border;
}
private void Test()
{
var doc = (HTMLDocument)this.editorWebBrowser.Document;
this.Stylex(doc.body.style);
}
加载中,请稍侯......
精彩评论