Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 加载带有嵌入式资源的Html_C#_Xaml_Webview_Microsoft Metro - Fatal编程技术网

C# 加载带有嵌入式资源的Html

C# 加载带有嵌入式资源的Html,c#,xaml,webview,microsoft-metro,C#,Xaml,Webview,Microsoft Metro,我正在Windows 8 Metro应用程序中使用WebView控件。我从网络流中读取了一个html字符串,该字符串包含标记中的嵌入图像 如果html中的图片的源代码指向某个网站,那么该控件非常有效,但是对于嵌入到标记中的图像,结果并不理想 这些图像不会渲染,而是渲染一些表示图像占位符的块 我正在使用NavigateToString方法来加载html 嵌入的图像是控制的限制还是有特殊的限制 如何加载html以显示嵌入的图像 如果这是一种控制限制,对 我怎样才能让它工作 经过一些研究和调查,我可

我正在Windows 8 Metro应用程序中使用WebView控件。我从网络流中读取了一个html字符串,该字符串包含标记中的嵌入图像

如果html中的图片的源代码指向某个网站,那么该控件非常有效,但是对于嵌入到标记中的图像,结果并不理想

这些图像不会渲染,而是渲染一些表示图像占位符的块

我正在使用NavigateToString方法来加载html

  • 嵌入的图像是控制的限制还是有特殊的限制 如何加载html以显示嵌入的图像

  • 如果这是一种控制限制,对
    我怎样才能让它工作


经过一些研究和调查,我可以确认:

  • 无法将带有链接资源的html文件加载到图像, css等,如果没有嵌入到应用程序本身中
解决方法:

  • 在html文件中嵌入css,而不是单独的文件
  • 将链接图像转换为Base64并嵌入
    img
    标记中
  • 如果遵循了上述步骤,您现在可以存储 您可以访问的任何可写文件夹中的html文件
  • 接下来,将html文件内容读入字符串
  • 最后,要使用嵌入的css和图像呈现html,请传递 从上述步骤到的
    NavigateToString
    方法的字符串
    WebView
    控件
  • 瞧!包含所有样式和图像的html应呈现为 预料之中
也许不是最好的解决方案。但是,它易于实现且可行。