如何显示基本HTML Windows8 Metro风格的TextBlock?

时间:2012-07-15 10:23:08

标签: c# xaml windows-8 windows-runtime winrt-xaml

我的html页面只包含<p><strong><br /><a>标记。我想在Windows 8中的XAML TextBlock中显示此内容。有没有办法在TextBlock中显示该内容而不会丢失结构(例如段落)?我不想使用WebView,因为WebView不能透明。

2 个答案:

答案 0 :(得分:10)

我正在开发一个开源的Windows 8 Metro RSS阅读器应用程序,我使用了HtmlUtilities.ConvertToText

您可以在此处查看源代码实施http://metrorssreader.codeplex.com/SourceControl/changeset/view/17913#265003

答案 1 :(得分:4)

如果您想在XAMl中执行此操作,只需添加转换器即可。

    public sealed class TextToHtmlConverter : IValueConverter
{
    public object Convert(object value, Type targetType, object parameter, string language)
    {
        if (value is string)
        {
            return HtmlUtilities.ConvertToText(value.ToString());
        }
        else
        {
            return value;
        }
    }

    public object ConvertBack(object value, Type targetType, object parameter, string language)
    {
        throw new NotImplementedException();
    }
}

然后在您的XAML中添加资源引用。

然后用转换器绑定:

Text =“{Binding titleFull,Converter = {StaticResource TextToHtmlConverter}}”