如何在ListView中访问WebView的NavigateToString属性

时间:2012-10-01 15:41:40

标签: c# xaml webview windows-runtime

我有一个ListView,其中包含WebView。当选择此列表中的ListViewItem时,我想通过WebView方法将HTML绑定到NavigateToString

WebView需要位于绑定列表中(因为它与项目列表相关联),必须使用NavigateToString(因为HTML内容来自代码,而不在Web上)

有没有这样做?如果是这样,最好的方法是什么?

1 个答案:

答案 0 :(得分:4)

当然,您可以使用附加的依赖项属性或可以绑定字符串的Behavior添加附加行为,以便在值更改时导航到该字符串(例如,当它首次分配时)

另一个问题可能是它的表现如何。我认为WebView控件是一个浏览器窗口,所以如果你的ListView中有一百个项目,你可能不想为它们创建一百个IE窗口。即使假设您使用默认的VirtualizingStackPanel作为ListView的ItemsPanel - 这听起来像许多问题的来源。我没有尝试过,所以我可能错了,但我宁愿尝试解析html并将其格式化以便在常规TextBlocks中使用。对于非常基本的html,如果你拥有纯文本和链接,你可以使用WinRT XAML Toolkit的LinkedHtmlFragment扩展和RichTextBlock。对于更加花哨的东西,您可能需要自己编写代码或使用HTML Agility Pack之类的东西(虽然我不确定它是否支持WinRT)。