我一直在尋找關於將HTML內容綁定到我的項目詳細信息頁面上翻頁視圖中的richtext塊的幫助信息,並且無法找到有關如何執行後續操作的任何信息。虛擬翻轉視圖中的XAML RichTextBlock
我正在構建一個簡單的新聞閱讀器應用程序,它從我要在我的flipview中顯示的提要中獲取html內容。
我創建了一個新的默認項詳細信息頁面,並結合我的收藏:
this.DefaultViewModel["Group"] = feedItem.Category;
this.DefaultViewModel["Items"] = feedItem.Category.Items;
this.flipView.SelectedItem = feedItem;
然後我我flipview的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> ...
內容是我的模型,我得到一個字符串屬性使用HtmlUtilities.ConvertToText(html)
完美的作品。但是,我需要圖像和標題(h1,h2等)在文章中。
我的問題是達到此目的的最佳方法是什麼?
解析html並創建運行,包含圖像等的內聯ui容器不是問題。我正在使用html敏捷包,但我的問題是如何將這些元素添加到richtextblocks塊集合中?
我想有上加載翻轉視圖中的事件,然後獲取當前的翻轉視圖的依賴對象(this.flipView.ItemContainerGenerator.ContainerFromIndex(flipView.SelectedIndex);
然後走節點樹找到richtextblock,然後設置塊屬性,但它的作品的第一個項目,然後停止工作,我猜這與翻轉視圖如何虛擬化收藏有關。
說實話,它變得非常困惑,肯定是一件簡單的工作!?當然,xaml團隊意識到人們可能想要將圖像綁定到富文本塊?
我以爲你可以將富文本塊的內容綁定到屬性上我的模型然後返回塊,但富文本塊似乎沒有辦法做到這一點,至少從我能看到的。
如果任何人都可以幫助我,它將不勝感激。這真讓我抓狂。
這是我原來的計劃,但我有和事件觸發選擇改變和翻轉視圖加載,但它似乎每隔幾篇文章,ContainerFromIndex返回null。我猜測這是由於某種虛擬化。我找不到每次都有效的方法。 – Terry
@Terry我有同樣的問題。我通過調用RichTextBlocks OnLoaded事件中的相同代碼來解決它,並且它在某種程度上起作用 –
非常感謝Igor。這似乎解決了它。 – Terry