如何国际化大型格式化文本

时间:2013-10-01 12:31:13

标签: c# xaml internationalization windows-phone

我正在制作一个包含大量文字的应用。我希望这个文本国际化,所以我将它存储在单独的文本文件中。这很好。

该文本包含一些文章,每篇文章都有几个段落,一些段落包含类似HTML的格式。

我不确定的部分是如何在我的视图中获取此文本?我尝试设置Xaml的{​​{1}}属性,但我的文本文件应包含正确的RichTextBox。我宁愿不这样走。

我采取的另一个方法是将XAML段落添加到TextBlock。似乎也不对。

那么,有什么建议如何解决这个问题?也许将它存储为正确的XHTML,然后将其转换为XAML并注入StackPanel

修改 该应用程序在转轴控件上显示文章。

1 个答案:

答案 0 :(得分:0)

您可以通过WebControlNavigateToString方法以HTML格式呈现您的内容:

<Controls:WebBrowser x:Name="browser" />

在代码隐藏中:

StreamResourceInfo sri = Application.GetResourceStream(new Uri("projectname;component/article.html", UriKind.Relative));
using (StreamReader stream = new StreamReader(sri.Stream))
{
    String html = stream.ReadToEnd();    
    browser.NavigateToString(html);
}

以下是一篇关于使用WebBrowser控件的有趣文章:Windows Phone WebBrowser control tips