asp.net - Microsoft.Web.UI.WebControls Treeview 在某些计算机上未呈现

标签 asp.net treeview web-controls

我们有一个简单的网页,显示 TreeView ( Microsoft.Web.UI.WebControls )

correctly rendered

现在,在某些机器上(主要是客户端;-)) TreeView 无法正确呈现:

not correctly rendered

我已经在我的所有机器上测试了这个,甚至是 Linux,并且所有内容都在这里正确呈现。我可以通过删除或重命名“webctrl_client”文件夹来重现此错误。

我不明白这个问题是什么? “webctrl_client”文件夹是否正确安装在 www 根文件夹中,并且 .dll 也是否正确放置? 我尝试清除浏览器缓存,但这似乎也没有任何效果......

有人知道会发生什么吗?

最佳答案

Microsoft.Web.UI.WebControls.Treeview 是一个过时的控件。

树控件损坏的最可能原因是它无法在 Windows 8/IE10 上运行。

最好的选择是转换为System.Web.UI.WebControl.TreeView

快速修复:将以下代码添加到您的 Global.asax.vb.Application_EndRequest 中。这将强制 IE 以兼容模式加载您的应用程序。

Try

   Response.AddHeader("X-UA-Compatible", "IE=5")

Catch ex As Exception

End Try

您还可以阅读这篇文章,了解如何确保您的服务器识别 IE10: http://www.hanselman.com/blog/BugAndFixASPNETFailsToDetectIE10CausingDoPostBackIsUndefinedJavaScriptErrorOrMaintainFF5ScrollbarPosition.aspx

更多说明: Microsoft 在 IE10 中删除了对 HTC 行为文件的支持 ( https://msdn.microsoft.com/en-us/library/hh801216(v=vs.85).aspx )。 HTC 是扩展浏览器功能的旧方法。 Microsoft TreeView 使用 HTC(位于 webctrl_client 文件夹中),没有后备方案。其他浏览器似乎仍然支持 HTC。

关于asp.net - Microsoft.Web.UI.WebControls Treeview 在某些计算机上未呈现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15927236/

相关文章:

c# - 数据绑定(bind)到 WPF TreeView 中的 SelectedItem

c# - ASP.NET TextBox 控件 - 获取隐藏代码中的默认文本值?

asp.net - IIS 6 网站根目录与应用程序?解决Url()?

asp.net - 如何只显示一条记录 - 具有最小值的记录?

WPF : TreeView virtualization not working

jquery - 将 JQuery 树插件转换为 Angularjs 指令

c# - 为什么 ASP.NET 找不到我的文本框?

未安装 IE 的 C# WebBrowser 控件(?)

c# - jQuery 验证 dd/mm/yyyy 格式的日期

asp.net - 在客户端计算机上注册 .NET COM DLL 文件