这篇文章可以解决您的问题。Visual Studio 中的 WebBrowser 控件似乎默认以 IE7 模式启动。这就是为什么您会在控件中出现 javescript 错误,但在浏览器中却没有。我强烈建议您阅读链接到顶部的文章。幸运的是,有一个修复程序。以下代码取自另一个 stackoverflow 对间接解决您的问题的问题的回答。这是那个链接,这是代码。
string installkey = @"SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION";
string entryLabel = Path.GetFileName(Application.ExecutablePath);
System.OperatingSystem osInfo = System.Environment.OSVersion;
string version = osInfo.Version.Major.ToString() + '.' + osInfo.Version.Minor.ToString();
uint editFlag = (uint)((version == "6.2") ? 0x2710 : 0x2328); // 6.2 = Windows 8 and therefore IE10
RegistryKey existingSubKey = Registry.LocalMachine.OpenSubKey(installkey, false); // readonly key
if (existingSubKey == null) {
existingSubKey = Registry.LocalMachine.CreateSubKey(installkey, RegistryKeyPermissionCheck.Default); // readonly key
}
if (existingSubKey.GetValue(entryLabel) == null) {
existingSubKey = Registry.LocalMachine.OpenSubKey(installkey, true); // writable key
existingSubKey.SetValue(entryLabel, unchecked((int)editFlag), RegistryValueKind.DWord);
}
此外,我在上面提到的文章说您也应该为您的应用程序创建一个 VS 主机进程的条目,否则它将无法在调试模式下工作。祝你好运,我希望这能解决你的问题!