c#中list绑定datagridview为什么不显示数据
publicclassUsers{publicObjectId_id;publicstringName{get;set;}publicstringCareer{set;g...
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的列明却没有显示数据? 展开
{
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的列明却没有显示数据? 展开
4个回答
展开全部
在学习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;
}
代码如下:
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;
}
展开全部
建议你再仔细看下datagridview的数据操作资料,百分之八九十可能是你代码没写对,确保代码写全,有问题可以自己加断点调试,培养好这个习惯可以给你带来很大的收获。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
看你代码你只是new了一个users集合 并没有往集合中添加数据啊
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
字段要数据绑定到对应列
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询