【发布时间】:2012-10-26 18:19:18
【问题描述】:
我一直在搜索有关将 html 内容绑定到我的项目详细信息页面上翻转视图中的富文本块的帮助,但找不到任何关于如何做我所追求的信息。
我正在构建一个简单的新闻阅读器应用程序,它从我想要在我的翻转视图中显示的提要中获取 html 内容。
我创建了一个新的默认项目详细信息页面并绑定了我的收藏:
this.DefaultViewModel["Group"] = feedItem.Category;
this.DefaultViewModel["Items"] = feedItem.Category.Items;
this.flipView.SelectedItem = feedItem;
然后在我的翻转视图的 DataTemplate 中:
<common:RichTextColumns x:Name="richTextColumns" Margin="117,0,117,47">
<RichTextBlock x:Name="richTextBlock" Width="560" Style="{StaticResource ItemRichTextStyle}">
<Paragraph>
<Run FontWeight="SemiLight" Text="{Binding Content}"/>
</Paragraph> ...
Content 是我使用 HtmlUtilities.ConvertToText(html) 获得的模型上的字符串属性
效果很好。但是,我需要文章中的图像和标题(h1、h2 等)。
我的问题是实现这一目标的最佳方法是什么?
解析 html 并创建运行、包含图像等的内联 ui 容器不是问题。我为此使用了 html 敏捷包,但我的问题是如何将这些元素添加到 Richtextblocks 块集合中?
我尝试在翻转视图上加载一个事件,然后获取当前翻转视图依赖对象(this.flipView.ItemContainerGenerator.ContainerFromIndex(flipView.SelectedIndex);,然后遍历节点树以找到richtextblock,然后设置块属性,但它适用于第一项和然后停止工作,我猜这与翻转视图如何虚拟化集合有关。
老实说,这确实是一项简单的任务!? xaml 团队肯定意识到人们可能希望将图像绑定到富文本块?
我认为您可以将富文本块的内容绑定到我的模型上的属性,然后返回块,但富文本块似乎没有任何方法可以做到这一点,至少从我能看到什么。
如果有人可以帮助我,将不胜感激。这让我发疯了。
【问题讨论】:
标签: c# xaml windows-8 microsoft-metro