首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >用JSON.NET将JSON对象显示到DataGridView中

用JSON.NET将JSON对象显示到DataGridView中
EN

Stack Overflow用户
提问于 2018-05-31 17:58:35
回答 1查看 261关注 0票数 0

我得到了Newtonsoft.Json.Linq.JToken onerow,它包含这样的JSON字符串:

代码语言:javascript
复制
{
  "n": 0,
  "i1": 0,
  "i2": 0,
  "t1": 0,
  "t2": 0,
  "d": 1,
  "c": [
    "202_Kamaz 4326-15",
    "0:00:00",
    "0:00:00",
    "",
    "0",
    "0 lt/100 km",
    "-----",
    "-----",
    ""
  ]  
}

如何将"c"中不同列的所有元素都放到DataGridView中。

我需要找到一种方法来使用从"c"中获取的数据对行进行List,并将此List分配给我的DataGridView.DataSource

EN

回答 1

Stack Overflow用户

发布于 2018-05-31 18:25:53

下面的代码似乎可以满足您的需求。

创建一个类来保存反序列化的json内容。

代码语言:javascript
复制
public class Rootobject
{
    public int n { get; set; }
    public int i1 { get; set; }
    public int i2 { get; set; }
    public int t1 { get; set; }
    public int t2 { get; set; }
    public int d { get; set; }
    public string[] c { get; set; }
}

然后,获取有效载荷。在本例中,我将其放在转义字符串中。

代码语言:javascript
复制
var load = "{\r\n  \"n\": 0,\r\n  \"i1\": 0,\r\n  \"i2\": 0,\r\n  \"t1\": 0,\r\n  \"t2\": 0,\r\n  \"d\": 1,\r\n  \"c\": [\r\n    \"202_Kamaz 4326-15\",\r\n    \"0:00:00\",\r\n    \"0:00:00\",\r\n    \"\",\r\n    \"0\",\r\n    \"0 lt/100 km\",\r\n    \"-----\",\r\n    \"-----\",\r\n    \"\"\r\n  ]  \r\n}";

现在反序列化您的json字符串。

代码语言:javascript
复制
 var json = JsonConvert.DeserializeObject<Rootobject>(load);

我在表单上放置了一个名为dgGridFromJson的数据网格视图

然后循环数组"c“,并相应地添加每一列。

代码语言:javascript
复制
 foreach (var item in json.c)
 {
     dgGridFromJson.Columns.Add(item, item);
 }

希望这能有所帮助

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50621570

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档