C# 网络浏览器编码UTF-8
我有一个WebBrowser控件,在其中显示一个本地文件(htm),这很好用。我还想将编码设置为UTF-8。我该怎么做 我尝试了这个解决方案: 但是webBrowser.Document是一个没有编码属性的对象 我在这里找到了答案: 感谢@BennoDualC# 网络浏览器编码UTF-8,c#,wpf,C#,Wpf,我有一个WebBrowser控件,在其中显示一个本地文件(htm),这很好用。我还想将编码设置为UTF-8。我该怎么做 我尝试了这个解决方案: 但是webBrowser.Document是一个没有编码属性的对象 我在这里找到了答案: 感谢@BennoDual static void webBrowser_LoadCompleted(object sender, System.Windows.Navigation.NavigationEventArgs e) { var webBrowse
static void webBrowser_LoadCompleted(object sender, System.Windows.Navigation.NavigationEventArgs e)
{
var webBrowser = sender as WebBrowser;
if(webBrowser == null) {
return;
}
var doc = (IHTMLDocument2)webBrowser.Document;
doc.charset = "utf-8";
webBrowser.Refresh();
}
@john我知道我可以从html文件中读取编码,但是我的webBrowser不知道。但是webBrowser.Document是一个没有编码属性的对象。这很奇怪,因为根据@rene,我对这个主题有点陌生。在我的MainWindow.xaml文件中,我的代码隐藏中有:webBrowser.Document是一个对象。看起来你需要将
文档
转换到正确的界面:如果你没有引用IHTMLDocument2,你可以通过使用dynamic:dynamic doc=webBrowser.Document抓取文档属性;