我有一个从数据库中呈现html内容的页面。现在我想在Silverlight中显示它。我想到用silverlight等价替换所有标签。或者有人建造了类似的东西吗?这似乎是最好的解决方案。有意见的其他人吗?
如果有一种方法可以获得在silverlight richtextbox控件中工作的超链接,那将会很有用。
<RichTextBox HorizontalAlignment="Left" Margin="25,23,0,0" Name="richTextBox1" VerticalAlignment="Top" Height="251" Width="352" >
<Paragraph FontSize="14" FontWeight="Bold" >Hello</Paragraph>
</RichTextBox>
Silverlight中不允许这样:
<TextBlock>
Hello <HyperlinkButton > World </HyperlinkButton>
</TextBlock>
我会被迫这样做:
<StackPanel Orientation="Horizontal">
<TextBlock >
Hello
</TextBlock>
<HyperlinkButton>
World
</HyperlinkButton>
</StackPanel>
这将是这样的HTML:
<h3> Hello <a href="#" >World</a></h3>
在某种程度上肯定银光方式可行,但将html内容转换为xaml似乎很乏味。如果有人有这样写库的冲动,那就太好了。
答案 0 :(得分:1)
我过去已经构建了其中一个(对于WPF而不是Silverlight)。这并不容易,它只处理文本元素。您应该使用HtmlAgilityPack读取HTML,然后在处理HTML时保持当前字体状态的堆栈。
您的HTML有多复杂?
答案 1 :(得分:0)
如果HTML为您提供服务,为什么要切换到Silverlight?您当然可以将您的HTML转换为XAML中的等效标签,但是您将失去SEO优势。
如果你真的想这样做 - 也许你觉得这很有用 - 你还需要进行逆向工程: - )