我正在使用在IE11中不起作用的Microsoft.Web.UI.WebControls TreeView。有人经历过吗?

我仅在IE 11的客户端上遇到以下错误

对象不支持属性或方法“ getTreeNode”



甚至selectedNodeIndex都是'undefined'

我们拥有旧产品,更改控件将产生巨大影响。

最佳答案

我今天解决了这个问题!

首先,如果您的IIS在较旧的Windows上运行,请确保
已安装KB2836940KB2836942

然后,修改IE WebControls的源代码。在[BaseRichControl.cs]第76行:

protected virtual BrowserLevelChecker CreateLevelChecker()
{
    //return new BrowserLevelChecker("ie", 5, 0.5, true);
    BrowserLevelChecker _BrowserLevelChecker = new BrowserLevelChecker("ie", 5, 0.5, true);
    _BrowserLevelChecker.Add("InternetExplorer", 11, 0, true);    //add IE11 support
    _BrowserLevelChecker.Add("Mozilla", 11, 0, true);    //sometimes ASP.NET see IE11 as Mozilla Browser
    return _BrowserLevelChecker;
}


重建源代码,并将新的“ Microsoft.Web.UI.WebControls.dll”放入您网站的“ bin”文件夹中。

现在,Treeview应该可以在IE11上运行。

希望这会有所帮助。

08-04 12:54