C#WebBrowser控制全球化

C#WebBrowser控制全球化,c#,browser,controls,culture,C#,Browser,Controls,Culture,我正在使用WebBrowser控件在C#中制作一个应用程序。 问题是我不是来自一个说英语的国家,我想用英语来代替当前的文化 例如,像谷歌这样的网站总是以英语出现,而不是像IE、FF、Chrome或Opera那样以葡萄牙语出现 有没有办法将该控件的页面请求区域性更改为当前系统的区域性或任意区域性?我尝试了各种方法来解决此问题,但收效甚微 Accept Language标头似乎是硬连接的,以使用在用户的Internet设置中配置的区域性。如果在WebBrowser.Navigate的addition

我正在使用WebBrowser控件在C#中制作一个应用程序。 问题是我不是来自一个说英语的国家,我想用英语来代替当前的文化

例如,像谷歌这样的网站总是以英语出现,而不是像IE、FF、Chrome或Opera那样以葡萄牙语出现


有没有办法将该控件的页面请求区域性更改为当前系统的区域性或任意区域性?

我尝试了各种方法来解决此问题,但收效甚微

Accept Language标头似乎是硬连接的,以使用在用户的Internet设置中配置的区域性。如果在WebBrowser.Navigate的additionalHeaders参数中提供一个值,则该值将被覆盖

如果更改此选项,则WebBrowser控件应发送正确的语言

我还发现了一个注册表设置: HKEY_当前用户/软件/Microsoft/Internet Explorer/International/AcceptLanguage

更改此注册表设置还应修改WebBrowser控件的Accept Language标头


不幸的是,在我的例子中,我希望能够覆盖WebBrowser控件的特定实例中的设置,而不是修改其他应用程序可能使用的全局设置。所以这种方法是没有用的。不过,也许它会对您有所帮助。

我尝试了各种方法来解决这个问题,但收效甚微

Accept Language标头似乎是硬连接的,以使用在用户的Internet设置中配置的区域性。如果在WebBrowser.Navigate的additionalHeaders参数中提供一个值,则该值将被覆盖

如果更改此选项,则WebBrowser控件应发送正确的语言

我还发现了一个注册表设置: HKEY_当前用户/软件/Microsoft/Internet Explorer/International/AcceptLanguage

更改此注册表设置还应修改WebBrowser控件的Accept Language标头


不幸的是,在我的例子中,我希望能够覆盖WebBrowser控件的特定实例中的设置,而不是修改其他应用程序可能使用的全局设置。所以这种方法是没有用的。但是,它可能会对您有所帮助。

您是否确保对winform进行本地化:?是-没有对此进行任何更改。尝试使用currentculture和currentuicultureIt由http请求标头中的接受语言确定。WebBrowser不会改变这一点。也许在调试Visual Studio时,没有葡萄牙语版本。检查语言栏。如果“语言栏”指的是windows键盘语言栏,则设置为葡萄牙葡萄牙语-正确。但这只适用于键盘,所以它应该是无关的。此外,webbrowser显示英语,甚至从VSI外部运行发布版本,我想知道您的语言环境设置是什么。这表示您的区域设置决定了渲染的内容。您是否确保本地化您的winform:?是-没有对此进行任何更改。尝试使用currentculture和currentuicultureIt由http请求标头中的接受语言确定。WebBrowser不会改变这一点。也许在调试Visual Studio时,没有葡萄牙语版本。检查语言栏。如果“语言栏”指的是windows键盘语言栏,则设置为葡萄牙葡萄牙语-正确。但这只适用于键盘,所以它应该是无关的。此外,webbrowser显示英语,甚至从VSI外部运行发布版本,我想知道您的语言环境设置是什么。这表示您的区域设置决定了渲染的内容。嗨,Kedj-和你一样,我对改变客户端机器上与网络浏览相关的全局配置感到厌倦,因为这不仅仅影响到我的应用程序-但是谢谢你提供的信息-值得一看-我最终决定忽略这个问题-但是因为@kadj是唯一一个回答的人,而且他的答案有效,我会选择正确的你知道,我对改变客户端机器上与网络浏览相关的全局配置感到厌倦,因为这不仅仅影响到我的应用程序——但感谢你提供的信息——值得一看——我最终决定忽略这个问题——但由于@kadj是唯一一个回答问题的人,而且他的答案有效,我会认为它是正确的