我想在C#应用程序中使用IE8作为WebBrowser控件.如何禁用"怪癖模式"并强制IE符合标准(就其实施而言)?
如果您不想使用注册表项技术,可以插入以下标记:
"content"属性强制以各种模式进行渲染.
我认为你所面临的问题在IEBlog中描述:IE8中的WebBrowser控件渲染模式:
虽然网站管理员可以轻松地改变他们的网站以在新版本的IE中正确呈现,但许多软件供应商没有资源立即用更新的内部页面推出他们的应用程序的新版本.为了确保这些现有应用程序保持正常工作状态, IE8默认情况下在IE7标准模式下呈现在WebBrowser控件实例内运行的页面.
在这里,我应该注意页面上的注释说上面的内容不正确,并且" IE8默认情况下在IE7严格模式或Quirks模式下呈现在WebBrowser控件实例中运行的页面,具体取决于页面的doctype."
解决方案如下:
当可执行文件加载WebBrowser控件的实例时,它会扫描注册表以检查可执行文件是否需要IE7标准或IE8标准模式.
...
要在IE8标准模式下运行,请插入以下注册表值:
[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_NATIVE_DOCUMENT_MODE]
"MyApplication.exe"=dword:13880
在这两个实例中,应将MyApplication.exe替换为将在指定模式下运行WebBrowser控件的可执行文件的名称.
因此,听起来"编程"解决方案是在注册表中写一个密钥,表示您希望IE8标准模式用于WebBrowser
特定应用程序中的控件.