c#中list绑定datagridview为啥不显示数据

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c#中list绑定datagridview为啥不显示数据相关的知识,希望对你有一定的参考价值。

public class Users

public ObjectId _id;
public string Name get; set;
public string Career set; get;
public string Name1 get; set;
public string Identity get; set;

List<Users> a = new List<Users>();
dataGridView1.DataSource = a;
我想先查询一下如在textBox中输入一值查询,将查询后的数据存入a中,然后和在dataGridView显示出来,为什么只显示了Name,Career,Name1,Identity的列明却没有显示数据?

在学习DataGridView 和List<T>绑定时发现DataGridView不会显示数据。后来发现要用类的属性才能正常显示,如果直接用类的字段等来显示,则无法显示数据。
代码如下:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace WindowsFormsApplication20

public partial class Form1 : Form

public Form1()

InitializeComponent();


private void Form1_Load(object sender, EventArgs e)


dgv_message.GridColor = Color.Blue;
//设置datagridview颜色
dgv_message.DataSource = new List<student>()
//设置datagridview数据来源来自List <student>

new student()sName="小李",Age=20,
new student()sName="小张",Age=40,
new student()sName="小王",Age=60,
new student()sName="小黄",Age=22
;
//对List <student>赋值
dgv_message.Columns[0].HeaderText = "姓名";
dgv_message.Columns[1].HeaderText = "年龄";
//设置datagridview列名


//定义class student并实现读写赋值
public class student

private string name;
private int age;

public string sName

get return name;
set name = value;


public int Age

get return age;
set age =value ;




如果把student中类变成以下代码,则无法显示:原因没有读写赋值
public class student

public string sName;
public int Age;
参考技术A 建议你再仔细看下datagridview的数据操作资料,百分之八九十可能是你代码没写对,确保代码写全,有问题可以自己加断点调试,培养好这个习惯可以给你带来很大的收获。本回答被提问者采纳 参考技术B 看你代码你只是new了一个users集合 并没有往集合中添加数据啊 参考技术C 字段要数据绑定到对应列

以上是关于c#中list绑定datagridview为啥不显示数据的主要内容,如果未能解决你的问题,请参考以下文章

C# 控制datagridview的combox属性的列绑定数据

我在C#里面给datagridview绑定了一个数据源,可当我判断值的时候却认为是空的,为啥呀?

C#中能不能用datagridview显示文件的内容?不用数据库

C#中dategridview数据源能否与Dictionary绑定

C#数组在DataGridView控件显示

C#中datagridview如何绑定ArrayList集合?