Frage

Ich bin Hosting MSIE in einer WinForms Form. Leider besteht darauf, es unabhängig im Kompatibilitätsmodus auf zu laufen, wenn ich ihm eine Seite, die Läufe in IE8-Modus in Stand-alone-IE geben. Der Effekt davon ist, dass einige Inhalte, die korrekt in Stand-alone-MSIE macht bekommen völlig falsch ausgerichtet und in der gehosteten Kontrolle vermasselte.

Neben Dokumenttyp usw., gibt es einige magische Art und Weise dem Web-Browser zu sagen, dass ich es der Seite auf die gleiche Weise machen will, als ob ich es in Stand-alone-MSIE geladen?

Ich möchte nicht den Registrierungsschlüssel Überschreibung verwenden ( http://blogs.msdn.com/b/ie/archive/2009/03/10/more-ie8-extensibility-improvements.aspx ) aufgrund meiner Form Teil sein ein Add-in für eine andere App. Ich will nicht das IE Verhalten für den Haupt-App ändern, und ich will sie nicht für andere Add-In ändern, unter dieser App läuft. Ich möchte nur diese an der Arbeit innerhalb des Browsers in gehosteten meine Form, nicht app-weit und nicht prozess breit.

War es hilfreich?

Lösung

Ich habe nicht getestet, aber wie wäre es mit der META Tag, zusammen mit dem HTTP- EQUIV Attribut, um den X-UA-COMPATIBLE Wert IE=8, die den Web-Browser anweist, in IE 8 Standards Modus eine Seite anzuzeigen. Ein Beispiel wäre:

<meta http-equiv="X-UA-Compatible" content="IE=8" />

Von dieser Linie in dem folgenden Artikeln es scheint, dass dies funktionieren soll.

  

In der Standardeinstellung Hosting-Anwendungen des   WebBrowser-Steuerelement geöffnet   auf Standards basierende Seiten im IE7-Modus   es sei denn, die Seite enthält ein   geeignete X-UA-Compatible-Header.   Sie können dies durch den Namen ändern Hinzufügen   der Anwendung ausführbare Datei   die FEATURE_BROWSER_EMULATION Funktion   Steuerschlüssel und den Wert   entsprechend an.

Andere Tipps

Um das Standardverhalten des Web-Browser-Kontrolle in der Anwendung ausgeführt wird entsprechend zu ändern, was IE selbst tut, müssen Sie die gesetzt FEATURE_BROWSER_EMULATION Feature Control Key.

Zum Beispiel können Sie imitieren IE8 Verhalten (so dass Websites in IE8-Standards-Modus machen) wie folgt.

Innerhalb HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Internet Explorer \ Main \ Featurecontrol

Erstellen Sie einen neuen Schlüssel mit dem Namen FEATURE_BROWSER_EMULATION

Innerhalb der Schlüssel, einen neuen REG_DWORD mit Mehrwert 8000 mit dem Namen Ihrer Anwendung ausführbare Datei. Z.

"YourApp.exe" = dword 8000 (Hex: 0x1F40)

Weitere Informationen unter: http: // blogs. msdn.com/b/ie/archive/2009/03/10/more-ie8-extensibility-improvements.aspx

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top