我目前正在我的应用程序中实现一个小型Web视图。
CefSharp
一切正常,但我遇到了一个小问题。
似乎CefSharp
使用en-US
之类的内容作为默认浏览器语言。我找不到有关如何更改所用语言的任何信息。
对于我的网页视图,我需要使用德语设置浏览器。
有没有办法做到这一点?语言可以改变吗?如果是,怎么样?
答案 0 :(得分:3)
您可以更改以下语言:
CefSettings settingsBrowser = new CefSettings();
settingsBrowser.Locale = "de";
Cef.Initialize(settingsBrowser);
答案 1 :(得分:0)
尝试以下方法:
实施IRequestHandler(example here)并以这种方式实施OnBeforeResourceLoad:
class MyClass
{
public decimal MyProperty { get; set; }
}
BindingList<MyClass> source = new BindingList<MyClass>
{
new MyClass { MyProperty = 1.0001m},
new MyClass { MyProperty = 100001.5555m},
new MyClass { MyProperty = 4m},
new MyClass { MyProperty = 300.5m }
};
comboBox1.DataSource = source;
comboBox1.DisplayMember = "MyProperty";
foreach (object possibleDate in comboBox1.Items)
{
int stringLength = comboBox1.GetItemText(possibleDate).Length;
if (stringLength > longestName.Length)
longestName = comboBox1.GetItemText(possibleDate);
}
Console.WriteLine(longestName);
//or
string longest = comboBox1.Items.Cast<object>().Select(a => comboBox1.GetItemText(a)).OrderByDescending(a => a.Length).FirstOrDefault();
然后使用此实现的新实例设置浏览器实例的RequestHandler。
答案 2 :(得分:0)
通过CefSettings可以更改浏览器的区域设置,但还需要更改“ Accept-Language”标头的默认语言。最简单的方法:
CefBrowserSettings browser_settings;
CefString(&browser_settings.accept_language_list) = L"de,de-DE";