2015-09-04 4 views
0

Я новичок в C# и хотел бы добавить следующие данные в ListView http://live.glidernet.org/flightlog/index.php?a=EHDL&s=QFE&u=M&z=2&p=&d=30052015&j Я хочу создать ListView пункт Еогеасп рейс, мне удалось добавить подпункт следующего кодом.добавляющих данных JSON в ListView с #

ListViewItem lvi = new ListViewItem("Foo bar"); 
lvi.SubItems.Add("Foo bar"); 
lvi.SubItems.Add("Foo bar"); 
FlarmListView.Items.Add(lvi); 

Как я могу проанализировать данные JSON в этом списке?

ответ

2

Если вы используете Json.Net, вы могли бы сделать что-то вроде этого:

WebClient client = new WebClient(); 
string json = client.DownloadString("http://live.glidernet.org/flightlog/index.php?a=EHDL&s=QFE&u=M&z=2&p=&d=30052015&j"); 

JObject data = JObject.Parse(json); 

// create an array of ListViewItems from the JSON 
var items = data["flights"] 
    .Children<JObject>() 
    .Select(jo => new ListViewItem(new string[] 
    { 
     (string)jo["glider"], 
     (string)jo["takeoff"], 
     (string)jo["glider_landing"], 
     (string)jo["glider_time"] 
    })) 
    .ToArray(); 

FlarmListView.View = View.Details; 
FlarmListView.FullRowSelect = true; 
FlarmListView.Columns.Add("Glider ID", 70); 
FlarmListView.Columns.Add("Takeoff Time", 85); 
FlarmListView.Columns.Add("Landing Time", 85); 
FlarmListView.Columns.Add("Time In Air", 85); 
FlarmListView.Items.AddRange(items); 
+0

Спасибо! это отлично работает –

Смежные вопросы