GeckoFx没有显示本地图像

时间:2015-09-03 13:55:42

标签: c# geckofx

我正在使用GeckoFx在我的应用程序中显示一些html页面。但控件不会加载本地图像。我使用htmlcode <html><body><img src="file:///c:/1.jpg" </img></body></html> 就是这样:

"file:///c:/1.jpg"

如果我将"https://www.google.com/images/nav_logo100633543.png"替换为任何在线图片(例如file{ 'dfsf': }),图片会毫无问题地加载,但本地图片无法加载。我试过了:

  • &#34; C:/1.jpg"
  • &#34; C:\ 1.JPG&#34;
  • &#34;文件:// C:/1.jpg"
  • &#34;文件:/// C:/1.jpg"

我做错了吗?

1 个答案:

答案 0 :(得分:2)

我遇到了同样的问题,显然问题是浏览器的安全功能阻止非本地页面访问本地文件。

我没有改变这种行为的运气,因此解决方法是将HTML页面写入文件并使用导航从磁盘加载该文件。允许本地页面访问磁盘上的文件。

而不是:

geckofx.LoadHtml(html_string);

使用:

using (StreamWriter sw = File.CreateText(path))
{
   sw.Write(html_string);
}
geckofx.Navigate(path);

它将按预期加载<img src="file://c:/1.jpg" />等本地文件和图像。