2013-04-10 4 views
2

Nous avons une simple page web qui affiche une vue arborescente (Microsoft.Web.UI.WebControls)Microsoft.Web.UI.WebControls TREEVIEW pas rendu sur certaines machines

correctly rendered

Maintenant, sur certaines machines (principalement les clients les ;-)) est le treeview pas rendu correctement:

not correctly rendered

Je l'ai testé ceci sur toutes mes machines, même linux, et tout est correctement représenté ici. Je peux reproduire cette erreur en supprimant ou en renommant le dossier 'webctrl_client'.

Je ne comprends pas ce que ce problème peut être? Le dossier 'webctrl_client' est correctement installé dans le dossier racine www, et le fichier .dll est également correctement placé? J'ai essayé d'effacer le cache des navigateurs mais cela ne semble pas avoir d'effet non plus ....

Est-ce que quelqu'un a une idée de ce qui pourrait se passer?

Répondre

5

Microsoft.Web.UI.WebControls.Treeview est un contrôle obsolète.

La raison la plus probable de la rupture de votre contrôle d'arborescence est qu'il ne fonctionne pas sous Windows 8/IE10.

La meilleure option est de convertir en System.Web.UI.WebControl.TreeView

Quick fix: ajoutez le code suivant à votre Global.asax.vb.Application_EndRequest. Cela forcera IE à charger votre application en mode de compatibilité.

Try 

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

Catch ex As Exception 

End Try 

Vous pouvez lire cet article sur la façon de vous assurer que votre serveur reconnaît IE10: http://www.hanselman.com/blog/BugAndFixASPNETFailsToDetectIE10CausingDoPostBackIsUndefinedJavaScriptErrorOrMaintainFF5ScrollbarPosition.aspx

Plus explication: Microsoft a supprimé le support des fichiers de comportement HTC dans IE10 (https://msdn.microsoft.com/en-us/library/hh801216(v=vs.85).aspx). HTCs était l'ancienne façon d'étendre les capacités du navigateur. Microsoft TreeView utilise des HTC (trouvés dans le dossier webctrl_client) sans repli. D'autres navigateurs semblent toujours soutenir les HTC.

Questions connexes