我有一个使用客户端对象模型的 SharePoint 列表的 WPF 应用程序。
客户希望能够使用富文本填写其中一个字段。这包括粗体/颜色/字体类型等格式。它还包括超链接。
我从 SharePoint 获得的信息存储在一个字符串中,看起来像这样:
Ticker Item 3 Bodyy<</p>
当我使用此处找到的建议时:是否可以将 HTML 绑定到 WPF Web 浏览器控件?
它看起来像这样:
股票代码项目 3 正文
最后的小"-"是怎么回事?是否有在 WPF 应用中显示富文本的正确方法,包括可单击的超链接和格式设置?
提前谢谢。
对于任何来到这里并寻找解决方案的人来说,答案是双重的。
1)问错了问题。使用 Web 浏览器控件不是执行此操作的最佳方法。你不能强制链接在IE中打开(至少,不容易),窗口的行为就像一个Web浏览器。按 F5 将刷新窗口,这将清空它,因为浏览器中没有地址。
无论如何,问题是 WPF 没有使用正确的字符集。将其添加到您的 html 将解决浏览器问题:
html = String.Format("<html><META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8"><body>{0}</body></html>", html);
2)您真正想做的是使用FlowDocumentScrollViewer。有关如何执行此操作的说明,请参阅此处:如何获取用于启动浏览器的流文档超链接并转到 WPF 应用中的 URL?