我已經反序列化並將我的JSON字符串轉換爲對象。JsonConvert對象到datagridview c#
我想知道如何將所有這些數據放入DataGridView
?
我搜索了論壇,但找不到合適的答案。下面是我有:
JSON:
{
"name":"default",
"ramps":[
{
"color":"deep_red",
"points": [
{"time":0,"intensity":0},
{"time":360,"intensity":0},
/* MANY OTHER POINTS */
{"time":1290,"intensity":0}
]
},
{
"color":"uv",
"points":[
{"time":0,"intensity":0},
/* MANY OTHER POINTS */
{"time":1290,"intensity":0}
]
},
{
"color":"deep_blue",
"points":[
{"time":0,"intensity":0},
/* MANY OTHER POINTS */
{"time":1320,"intensity":0}
]
},
/* MANY OTHER COLORS */
],
"response_code":0
}
類:
public class Prime
{
public string name { get; set; }
public ramps[] ramps { get; set; }
public int response_code { get; set; }
}
public class ramps
{
public string color { get; set; }
public points[] points { get; set; }
}
public class points
{
public int time { get;set;}
public int intensity { get; set;}
}
C#代碼:
if (response2.StatusCode == HttpStatusCode.OK)
{
var arr = JsonConvert.DeserializeObject<Prime>(responseFromServer);
Dg_View.DataSource = arr;
}
不幸的是,上面的代碼沒有填滿DataGridView
(Dg_View
)與任何數據。調試arr
我可以看到正確格式的所有JSON。
我要color
爲行名,time
爲列標題,每個框中的值爲intensity
。
歡迎來到StackOverflow。我編輯了你的問題,以減少巨大和不必要的代碼量。當你問,儘量簡化代碼儘可能簡化,沒有意義的是有200行全部重複和冗餘,這只是浪費時間的讀者。一個有用的閱讀:[如何創建一個最小,完整和可驗證的示例](https://stackoverflow.com/help/mcve)。 –
您有層次數據,因此您應該嘗試使用主/細節表單方法https://msdn.microsoft.com/en-us/library/y8c0cxey(v=vs.110).aspx(您至少需要兩個datagridView,一個用於斜坡,一個點) – caner
看起來相當複雜..我很驚訝,沒有簡單的方法將數據發佈到一個對象的datagridview ..我設法做到這一點嵌套for循環時,數據是在XML格式。 –