强制转换System.ComObject不再有效
本文关键字:不再 有效 ComObject System 转换 | 更新日期: 2023-09-27 17:59:27
我刚刚安装了ie9,现在我使用mshtml的IHTMLStyle的程序无法再进行广播。
所以我几乎有
类样式{mshtml。HTML样式mStyle;样式(mshtml.IHTML样式){mStyle=样式为mshtml。HTML样式}}
过去它是有效的,但现在mStyle总是为null。我试着做一个显式的转换,即(mshtml.HTMLStyle)样式,但最终没有成功,因为它说实际的样式类型是System__ComObject,当我知道它在我安装ie9之前就已经很好了。
这听起来像其他人遇到过的东西吗?
使用带有"dynamic"的后期绑定像这样:
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);
}