c# 中如何把实体类绑定到dataGridView并显示出来。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c# 中如何把实体类绑定到dataGridView并显示出来。相关的知识,希望对你有一定的参考价值。
在c#三层结构中,我用实体类从数据库中读取了一张表在里面。现在在表示层中有一个datagridview控件,我把这个实体类绑定到了它的数据源。不知道如何像dateset一样,把表中的数据显示出来。谢谢 了
将你的实体对象一个一个的加载进ArrayList对象中,在将ArrayList作为数据源绑定到datagridview空间里就行了.注意:实体类必须每个字段属性话后才能作为绑定后的有效字段.
比如必须:
private int age= 0;
public int Age get return age; //必须实现get,这样数据集中就有Age这个字段了。
以下是我给你写的例子:
using System;
using System.Data;
public class Book
private string _Name = "";
public string Name
get return _Name;
set _Name = value;
private string _Title = "";
public string Title
get return _Title;
set _Title = value;
private int _Pages = 0;
public int Pages
get return _Pages;
set _Pages = value;
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.htmlControls;
using System.Collections; //ArrayList所处的空间
public partial class _Default : System.Web.UI.Page
protected void Page_Load(object sender, EventArgs e)
ArrayList al = new ArrayList();
for (int i = 0; i < 6; i++)
Book b = new Book();
b.Name = "AAA";
b.Pages = i + 1000;
b.Title = "leo";
al.Add(b);
this.GridView1.DataSource = al;
this.GridView1.DataBind();
//使用方式和DataView等对象使用方式一致。其优点是更好的数据支持!
记得马上给分 ^o^ 参考技术A 这样来操作
List<实体类> list = new List<实体类>();
循环读取DataReader
while(dr.Read())
实体类 t = new 实体类();
//下面的代码把datareader封装到单个实体中
list.Add(t);
绑定的时候直接datagridview.DataSource= list
和dataset绑定其实是一样的,不过绑定的实体类的属性
使用的是反射的方式进行的绑定本回答被提问者和网友采纳 参考技术B 你在实体类里加个GetDataTable函数,返回一个datetable就可以直接给datagridview绑定了 参考技术C public IList<You_Model> ReBind()
IList<You_Model> ReModel=new List<You_Model>();
//execmd 读数据什么的
//dr 然后getstring add到ReModel
return ReModel;
//绑定
数据控件或其他的.datasource=ReBind();//你可以把它看作一个集合(相当于ds,dr什么的),多维数组。 参考技术D 出现的问题就是dataGridView中的数据为null就会报错,加上判断就行了。
解决方法供参考:
1.设置dgvSurchargeText.AutoGenerateColumns = false;
2.判断dgv.Rows[e.RowIndex].Cells[e.ColumnIndex].Value!=null
其中dgv是dataGridView。
C#编程代码如何从数据库中查询并把查询结果显示在dataGridView?
参考技术A最简单的
写一个数据查询类.然后调用xx.chaxun方法
窗体代码写以下这些就可以了
sql = "select * from xxxx";
Datatable dt = xx.chaxun(sql);
datagridview1.DataSource = dt;
记得将datagridview里面的字段与表中的字段相关联
Dateset 或DataTable或集合进行数据绑定,如有什么问题,请继续追问 private DataSet ds = new DataSet();
private SqlDataAdapter adapter = new SqlDataAdapter();//创建数据适配器
SqlCommand com = new SqlCommand("select TeacGuid, TeacName as 姓名,TeacSex as 性 别,TeacSalary as 工资,TeacRemark as 备注 from Teachers", DBHelper.con);
adapter.SelectCommand = com;
adapter.Fill(ds, "Teachers");//将按照条件查出来的Teachers表中信息填充到ds中
this.dataGridView1.DataSource = ds.Tables["Teachers"]; 附上一段用DataSet实现的代码。
以上是关于c# 中如何把实体类绑定到dataGridView并显示出来。的主要内容,如果未能解决你的问题,请参考以下文章
c# winform DataGridView添加一行,添加数据后,保存到数据库
C#中datagridview如何绑定ArrayList集合?