2016-09-13 8 views
2

ユーザーにレコードを表示するためにJSONデータをリストに入れたいと思います。しかし、私がシステムを走らせると、リストにはJSONデータではなくプロジェクト名が2回しか表示されません。JSONデータを含むリストをXamarin.formsに表示するC#

HttpClient client = new HttpClient(); 
client.BaseAddress = new Uri("Http://www.eletrotechautomacoes.com.br"); 
string url = string.Format("/pontos/consulta.php"); 
var response = await client.GetAsync(url); 
var result = response.Content.ReadAsStringAsync().Result; 
List<ExchangeRates> listaProdutos = JsonConvert.DeserializeObject<List<ExchangeRates>>(result); 

    this.LlistSpecials.ItemsSource = listaProdutos; 

私はエラーがこの行であると思う:

this.LlistSpecials.ItemsSource = listaProdutos; 

私の難易度は、リストの内容を示すことです。表示されるリストに変換する必要がありますか?あなたはこのリストを表示する手順を知っていますか?現在、プロジェクト名を2回返しています。 JSON項目の量とは関係がありますが、これも2つです。

ファイルJSON:

[{ 
    "id": "1", 
    "nome": "pendrive", 
    "preco": "20.00", 
    "tipo": "eletronico" 
}, { 
    "id": "2", 
    "nome": "Monitor", 
    "preco": "250.00", 
    "tipo": "eletronicos" 
}] 

オブジェクト:

public class ExchangeRates 
{ 
    public string id { get; set; } 
    public string nome { get; set; } 
    public string preco { get; set; } 
    public string tipo { get; set; } 
} 
+0

あなたのXAMLまたはあなたのListViewコントロールのインスタンス化のコードを投稿することができますか? – wishmaster

+0

それはあなたのリストのためのテンプレートを提供していない、それはちょうどクラスの名前になります各オブジェクトのToString()値を表示します – Jason

+0

私はあなたがリストをインスタンス化していないと思う:List listaProdutos =新しいリスト(); –

答えて

0

あなたの目標は、リストビューであなたのJSONオブジェ内のすべてのプロパティを表示する場合、あなたはカスタムセルを作成する必要があります。ドキュメントhere。 textCellを使用している場合は、表示するプロパティのバインディングを定義する必要があります。

あなたは、例えば、「ノーム」を表示したい場合は、あなたのXAMLコードでそれを行う:

<ListView> 
    <ListView.ItemTemplate> 
     <DataTemplate> 
     <TextCell Text="{Binding nome}" /> 
     </DataTemplate> 
    </ListView.ItemTemplate> 
    </ListView> 
関連する問題