默认情况下,IE8 在 IE7 标准模式下呈现在 WebBrowser 控件实例中运行的页面。您看到的差异是基于 IE8 和 IE7 标准的差异。
当可执行文件加载 WebBrowser 控件的实例时,它会扫描注册表以检查可执行文件是否需要 IE7 标准或 IE8 标准模式。
IE8 中的 WebBrowser 控件呈现模式(已弃用) IE8 中的
WebBrowser 控件呈现模式(更新)
要在 IE7 标准模式下运行 WebBrowser 控件,请将以下值插入注册表:
[(HKEY_CURRENT_USER or HKEY_LOCAL_MACHINE)\Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION]
"MyApplication.exe" = dword 7000 (Hex: 0x1B58)
要在 IE8 标准模式下运行,请插入以下注册表值:
[(HKEY_CURRENT_USER or HKEY_LOCAL_MACHINE)\Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION]
"MyApplication.exe" = dword 8000 (Hex: 0x1F40)
在这两种情况下,应将 MyApplication.exe 替换为将在指定模式下运行 WebBrowser 控件的可执行文件的名称。
说了这么多,您可以避免一起摆弄注册表。
托管在 WebBrowser 控件中的页面可以通过使用X-UA-Compatible元标记来指定呈现模式来覆盖呈现设置。
例如,要强制 IE8 TWebBrowser 控件以 IE8 标准呈现站点,请使用:
<META http-equiv="X-UA-Compatible" content="IE=8">
这可以通过主机头或作为每个文档的编辑全局完成。
元标记解决方案可能已被弃用,我建议您按照注册表步骤操作。