0

我有一个 WPF 应用程序,它使用客户端对象模型使用 SharePoint 列表。

客户希望能够使用富文本填写其中一个字段。这包括粗体/颜色/字体类型/等格式。它还包括超链接。

在我从 SharePoint 获得的信息中,存储在一个字符串中,看起来像这样:

<div class=\"ExternalClass82C42B1E597D49188F88ECA8C4EEB083\"><p>Ticker Item 3 Body<span style=\"color:#000000\"></span>y<</p></div>

当我使用我在这里找到的建议时:我可以将 HTML 绑定到 WPF Web 浏览器控件吗?

它看起来像这样:

代码项目 3 身体​</p>

结尾的小“​”是怎么回事?是否有正确的方法在我的 WPF 应用程序中显示包含可点击的超链接和格式的富文本?

提前致谢。

4

1 回答 1

1

对于任何来这里寻找解决方案的人来说,答案是双重的。

1) 提出了错误的问题。使用 Web 浏览器控件并不是最好的方法。您不能强制在 IE 中打开链接(至少,不容易),并且该窗口的行为类似于网络浏览器。按 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。有关如何执行此操作的说明在这里: 如何获取 FlowDocument 超链接以启动浏览器并转到 WPF 应用程序中的 URL?

于 2012-06-11T17:21:30.390 回答