【问题标题】:Displaying HTML Content in Windows Universal Apps without WebView在没有 WebView 的 Windows 通用应用程序中显示 HTML 内容
【发布时间】:2015-04-04 05:12:31
【问题描述】:

我正在为我们的网站开发一个 Windows 通用应用程序,这是一个在 WordPress 上运行的博客。该应用程序从网站的 RSS 提要中获取数据。我现在遇到的问题是如何显示每篇文章的内容。 文章的示例内容如下所示:

Lorem ipsum dolor sit amet,没有 adhuc epicurei assentior,cum eu lorem viris。 Dicant 语料库 vulputate mea at。广告 sed audiam comprehensam。 Pri debitis mentitum pericula ad,conceptam instructior ex mei.<!-- more --> <img class="alignnone size-medium wp-image-2131" src="http://www.sample.com/sampleimage.jpg" alt="wideimage" width="570" height="270"/>No quem voluptua qui,viritation facilisis ei pri。 Pri an enim soluta prodesset, ea est elitr vitae admodum。 Ei unum cibo libris per,坐在 dicit saperet gubergren in,vix ut diam deleniti。广告 mea maluisset aliquando cotidieque。 Corrumpit consetetur vim ea, eos ea esse natum phaedrum。 Vide falli ea duo,fierent volutpat facilisis ei est,pro ex viris primis。 Vel elit mutat Reformidans ex, modus postulant duo 等。 &lt;a title="Hyperlink" href="http://samplewebsite.com" target="_blank"&gt;Hyperlink&lt;/a&gt;&lt;em&gt;Bold text&lt;/em&gt;

如您所见,文章的内容包含诸如imgema 等 HTML 标签。现在我可以使用 WebView 显示内容,但是 WebView 的怪癖,如捏缩放、自动水平滚动和其他似乎不适合在应用程序中阅读。

内容存储在字符串中,如何将 HTML 转换为 XAML UI 元素并在不使用 WebView 的情况下显示它们。

【问题讨论】:

    标签: c# html xaml win-universal-app


    【解决方案1】:

    WebView 非常适合 HTML 内容(或者考虑使用 HTML/JavaScript 应用程序而不是 Xaml)。如果您希望数据可查看但不可操作,则可以使用 WebViewBrush。如果您希望 WebView 是半实时的,您还可以将 javascript 注入您的 WebView 以防止滚动(请参阅How to disable WebView scrolling in Windows 8.1

    没有将 HTML 转换为 Xaml 的简单方法。您需要解析 HTML 并手动转换它。对于简单的标记,这可能是微不足道的。对于复杂的页面,自动化将是困难或不可能的。 HtmlAgilityPack 之类的库可以帮助解析 HTML,这样您就可以将树转换为类似的 Xaml 块(如果我理解您的情况,可能在 RichTextBlock 中)

    【讨论】:

    • 您为禁用滚动提供的链接,它禁用水平和垂直滚动。我只想禁用水平滚动。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-10
    相关资源
    最近更新 更多