如何在xamarin表单中显示带有html格式的文本

G.M*_*ich 10 c# regex json xamarin xamarin.forms

我使用json在webservice上工作,我得到了html格式的文本.我想我的文本有超链接和一些其他属性,我从html标签(等粗体)找到.

我尝试在WebView源中绑定我的html字符串,但WebView每次都是空白的.我用这个代码

var browser = new WebView();
var htmlSource = new HTMLWebViewSource();
htmlSource.Html = MyItem.Article;
browser.Source = htmlSource;
Run Code Online (Sandbox Code Playgroud)

MyItem.Article字符串是这样的

json样本

我希望Label里面有类似这样的东西,ListView内部就是这样的东西.

带有超链接的文本

我怎样才能做到这一点?

Ish*_*med 14

这应该适合你

string htmlText = MyItem.Article.ToString().Replace(@"\", string.Empty);
var browser = new WebView ();
var html = new HtmlWebViewSource {
  Html = htmlText
};
browser.Source = html;
Run Code Online (Sandbox Code Playgroud)

因为Xamarin.Forms.HtmlWebViewSource.HTML期望纯HTML.使用此方法,您可以在本文的帮助下创建一个Xamarin.Forms用户控件http://blog.falafel.com/creating-reusable-xaml-user-controls-xamarin-forms/干杯......!


Anu*_*rma 11

在 XAML 中,您可以执行以下操作:

<WebView>
   <WebView.Source>
      <HtmlWebViewSource Html="{Binding HtmlText}"/>
   </WebView.Source>
</WebView>
Run Code Online (Sandbox Code Playgroud)

您可能还需要提供的高度和宽度WebView,如果它不是内Grid