You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Xamarin Forms中WebView无法显示数据库HTML格式化数据的问题

解决Xamarin Forms WebView无法显示数据库HTML内容的问题

我来帮你排查这个WebView无法正常渲染HTML内容的问题,咱们一步步来解决:

1. 先处理HTML转义字符问题

你从数据库获取的内容是Question&lt;font size="4"&gt;&lt;b&gt; Instruction&lt;/b&gt;&lt;/font&gt;,这里的&lt;是HTML转义后的<符号,WebView会把它当成普通文本而不是HTML标签解析,所以第一步要先解码这些转义字符。

在C#代码中使用System.Net.WebUtility.HtmlDecode方法来解码:

var rawHtml = result[1][i].vchar_Instruction;
var decodedHtml = System.Net.WebUtility.HtmlDecode(rawHtml);

2. 包裹完整的HTML文档结构

很多时候WebView对不完整的HTML片段渲染支持不好,建议把解码后的内容包裹在标准的HTML文档结构里,确保渲染正常:

var fullHtml = $"<html><head></head><body>{decodedHtml}</body></html>";

3. 赋值给HtmlWebViewSource

最后把处理好的完整HTML内容赋值给你的surveyInstruction:

surveyInstruction.Html = fullHtml;

完整修改后的C#代码示例

// 从数据库获取原始转义HTML
var rawHtml = result[1][i].vchar_Instruction;
// 解码转义字符
var decodedHtml = System.Net.WebUtility.HtmlDecode(rawHtml);
// 构建完整HTML文档
var fullHtmlContent = $"<html><head></head><body>{decodedHtml}</body></html>";
// 赋值给WebView的数据源
surveyInstruction.Html = fullHtmlContent;

这样处理后,WebView就能正确解析<font>和<b>标签,显示出带有格式的文本了。

内容的提问来源于stack exchange,提问作者A for android

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 07:55:55