GridView 是 DataGrid的后继控件,在.net framework 2 中,虽然还存在DataGrid,但是GridView已经走上了历史的前台,取代DataGrid的趋势已是势不挡。
作用:其功能是在web页面中显示数据源中的数据。GridView和DataGrid功能相似,都是在web页面中显示数据源中的数据,将数据源中的一行数据,也就是一条记录,显示为在web页面上输出表格中的一行。
在此GirdView的详细属性和事件我不再阐述。下面我只是简单介绍一下GirdView如何显示从后台数据库搜索出来的数据,也就是GirdView怎样绑定并显示数据源。
一、前台界面如下
二、后台编写:用VS建立ASP.NET窗体应用程序。在此,我只编写查询功能,后台代码如下
1、建立数据库连接
1
2
3
4
5
6
|
public static SqlConnection createConnection() { SqlConnection con = new SqlConnection( "server=.;database=dropDownTest;uid=sa;pwd=123456" ); con.Open(); return con; } |
2、编写操作类、其中有普通查询方法、按条件查询方法、添加方法(略)
1
2
3
4
5
6
7
8
9
|
public static DataTable SelectAll() { SqlConnection con = createConnection(); DataTable dt = new DataTable(); SqlCommand cmd = new SqlCommand( "select * from person" , con); SqlDataReader sdr = cmd.ExecuteReader(); dt.Load(sdr); return dt; } |
3、编写查询按钮单击事件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
protected void Button4_Click( object sender, EventArgs e) { string c = "" ; //定义空字符串,用来条件查询 //设置复选框1的查询条件 if ( this .CheckBox1.Checked) { c = "pID=" + this .txtID.Text; //精确匹配查询条件 } else { c = "pID like'%' " ; //模糊匹配查询条件 } if ( this .CheckBox2.Checked) { c += " and personName like '%" + this .txtName.Text + "%'" ; } if ( this .CheckBox3.Checked) { if (RadioButton1.Checked) { c += "and personSex='男'" ; } else { c += "and personSex='女'" ; } } DataView dv = new DataView(PerosonOperate.SelectAll()); //调用查询方法 dv.RowFilter = c; //设置过滤器(按条件查找) dv.Sort = "pID Desc" ; //使结果按照pID字段降序排列 GridView1.DataSource = dv; //设定数据源 GridView1.DataBind(); //绑定数据源 //设置列名,如果不设置,将会以数据库中对应的字段名称代替 GridView1.HeaderRow.Cells[0].Text = "编号" ; GridView1.HeaderRow.Cells[1].Text = "姓名" ; GridView1.HeaderRow.Cells[2].Text = "性别" ; |
三张查询效果图如下所示,分别为直接点击查询、按照性别查询、按照编号和姓名和性别一块查询。
上面编写的后台代码只是在功能可以实现的基础上编写的,里面未免有一些Bug,希望大家自己改造。
从后台绑定数据的筛选再到前台的呈现,用GridView将数据在浏览器上显示出来的大致流程就是这样,这里面唯一有点别扭的是按条件查询中,字符串的拼写不好弄,这样做无非是使用GirdView的过滤效果,也就是这段代码dv.RowFilter = c;希望大家在代码编写上细心点。
以上就是通过实例为大家介绍ASP.NET数据绑定中的GridView控件的使用方法,希望对大家的学习有所帮助。