【问题标题】:Display html in Windows Store app在 Windows 应用商店应用中显示 html
【发布时间】:2012-10-12 13:32:07
【问题描述】:

我正在尝试在我的 Windows 应用商店应用程序 (C#/XAML) 中显示 html。但我找不到合适的方式来显示它与透明背景。有什么方法可以相应地了解 WebView 的应用程序背景颜色和格式 html 吗?或者我应该更好地添加另一个页面来显示 html 描述,并将其背景设置为我想要的(在代码中)?或者也许有更好的方法?

附:如果可能的话,我也希望能够处理超链接点击。我知道我可以在 WebView 中这样做。

【问题讨论】:

  • 我认为您使用的是 XAML / C# ?
  • 是的,C#/XAML。我编辑了问题以反映这一点。
  • 您是在尝试显示 HTML 源代码还是呈现的 HTML 页面?
  • 渲染的 html。我需要超链接、格式等。

标签: c# .net html xaml windows-store-apps


【解决方案1】:

我的理解是 WebView 控件实际上是在 XAML 层之上呈现为单独的表面,因此不支持透明度。您最好的选择是按照您的建议进行操作:查找当前应用程序背景颜色并相应地设置 WebView HTML 的背景。

获取应用背景颜色很容易;像Resources["ApplicationPageBackgroundThemeBrush"] 这样的东西就可以了。

将该颜色应用于您希望导航到的任何页面都比较棘手,AFAIK。一种可能有效的方法(虽然我自己没有尝试过)是使用HttpClient 下载页面的原始HTML 并在调用WebView.NavigateToString() 之前修改背景颜色,而不是直接调用WebView.Navigate()

如果你可以编辑页面源,你可以通过添加一些JS脚本来改变背景颜色来简化这个过程,然后使用WebView.InvokeScript()

【讨论】:

  • 感谢您的回答。我已经完成了与您提出的几乎完全相同的事情(下载了 html,然后手动更改了背景和前景的颜色),但是已经忘记了这个问题 :-) 但是该解决方案似乎不是一个好方法处理那个。我希望有更好的方法来做到这一点:-(
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-03-31
  • 1970-01-01
  • 2015-11-22
  • 1970-01-01
  • 1970-01-01
  • 2013-10-27
  • 2016-05-25
相关资源
最近更新 更多