我最终使用了软件包可在 gitHub 上获取从 HTML 转换为 RickTextBlock。
基本上,您只需要打开包管理器控制台(工具>库包管理器>包管理器控制台)并安装包跑步Install-Package RichTextBlock.Html2Xaml
.
然后打开 RichTextBlock Properties.cs,您将看到需要复制的行。就我而言,我必须添加名称空间:
xmlns:rtbx="using:EventTests.Common"
然后您可以使用以下方法绑定具有 HTML 的属性:
<RichTextBlock rtbx:Properties.Html="{Binding ...}"/>
一些问题和一些解决方案
我发现这个库的一个问题是它如何处理没有 div 的简单 html。喜欢:
<p>Testing <i>italic</i> and something more.</p>
<p>More testing </p>
这打印:
Testing italic还有更多的东西。
更多测试
但是,我想要这样的东西:
Testing italic还有更多的东西。
更多测试
所以我必须将第二段包裹在一个 div 中(并且除了第一段之外的所有段落都可以包裹)。
<p>Testing <i>italic</i> and something more.</p>
<div><p>More testing </p></div>
如果您将第一段换行,那么您将有一个额外的新行。
到目前为止,这是我找到的最好的解决方案。如果你发现更好,我很感激,因为我正在测试和学习。如果您找到更好的解决方案,我会接受您的。
当心
如果 html 中有“