我正在使用WebBrowser控件在C#中创建应用程序。 问题是我不是来自讲英语的国家,而是控制接缝发送英语而不是当前文化。C#WebBrowser控件全球化
因此,例如,像谷歌这样的网站将总是以英文而非葡萄牙语显示,因为它出现在IE,FF,Chrome或Opera中。
有没有办法将控件的页面请求文化更改为当前系统的文化或任何文化?
我正在使用WebBrowser控件在C#中创建应用程序。 问题是我不是来自讲英语的国家,而是控制接缝发送英语而不是当前文化。C#WebBrowser控件全球化
因此,例如,像谷歌这样的网站将总是以英文而非葡萄牙语显示,因为它出现在IE,FF,Chrome或Opera中。
有没有办法将控件的页面请求文化更改为当前系统的文化或任何文化?
我已经尝试过各种方法来解决这个问题,但很少成功。
Accept-Language头似乎被硬连线以使用在用户的Internet设置中配置的文化。如果您将additionalHeaders参数中的值提供给WebBrowser.Navigate,则此值将被覆盖。
如果更改此设置,WebBrowser控件应发送正确的语言。
我还发现了一个注册表设置:HKEY_CURRENT_USER /软件/微软/ Internet Explorer中/国际/ AcceptLanguage
更改此注册表设置也应该修改WebBrowser控件的AcceptLanguage标头。
不幸的是,在我的情况下,我希望能够覆盖WebBrowser控件的特定实例中的设置,而不是修改可能被其他应用程序使用的全局设置。所以这种方法是没用的。但是,也许它会帮助你。
您是否确定本地化您的winform:http://msdn.microsoft.com/en-us/library/y99d1cd3%28v=VS.100%29.aspx? – Candide
是的 - 没有改变任何事情。通过当前的文化和当前的文化尝试 – 537mfb
它由http请求头中的Accept-Language决定。 WebBrowser不会改变这一点。也许Visual Studio在调试的时候,没有葡萄牙版本。检查语言栏。 –