如何理解GridView
发表于:2025-01-18 作者:千家信息网编辑
千家信息网最后更新 2025年01月18日,本篇内容主要讲解"如何理解GridView",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"如何理解GridView"吧!(一)DataKeyName属性(1
千家信息网最后更新 2025年01月18日如何理解GridView
本篇内容主要讲解"如何理解GridView",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"如何理解GridView"吧!
(一)DataKeyName属性
(1)DataKeyNames一般都是用来对当前行做唯一标示的,所以一般为数据库的ID。
(2)GridView.DataKeys[e.RowIndex],e.RowIndex是获取事件对应的行,GridView.DataKeys[e.RowIndex]就是获取对应行的唯一标示也就是DataKeyNames所指定列的值。
(3)DataList和Repeater是没有的该属性的。
在代码中这样使用:(定义的该函数在下面都需要调用)
////// 实现数据绑定功能 /// private void BindToDataGird() { SqlConnection con = DB.CreateCon(); SqlDataAdapter sda = new SqlDataAdapter(); sda.SelectCommand = new SqlCommand("select employeeID,FirstName,LastName,Title,BirthDate from employees ", con); DataSet ds = new DataSet(); sda.Fill(ds, "emp"); //将查询到的数据添加到DataSet中。 this.GridView1.DataKeyNames =new string[]{ "employeeID"}; //DataKeyNames的使用 this.GridView1.DataSource = ds.Tables["emp"]; this.DataBind(); }
如何取值?
DataKey key = GridView1.DataKeys[e.RowIndex];//其中e为GridViewDelete(或者Edit)EventArgs e string empID = key[0].ToString();
(二)分页
由于GridView中封装了分页的功能。这里实现起来很容易。先需要设置属性:AllowPaging/PageSize/PageSetting。然后编写事件代码:
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e) { this.GridView1.PageIndex = e.NewPageIndex; this.BindToDataGird(); }
(三)排序
首先设置AllowSorting属性为true.事件代码:
protected void GridView1_Sorting(object sender, GridViewSortEventArgs e) { if (ViewState["order"] == null) //使用ViewState设置双向排序。 { ViewState["order"] = "ASC"; } else { if (ViewState["order"].ToString() == "ASC") { ViewState["order"] = "DESC"; } else { ViewState["order"] = "ASC"; } } //数据绑定显示 SqlConnection con = DB.CreateCon(); SqlDataAdapter sda = new SqlDataAdapter(); sda.SelectCommand = new SqlCommand("select employeeID,FirstName,LastName,Title,BirthDate from employees ", con); DataSet ds = new DataSet(); sda.Fill(ds, "emp"); ds.Tables["emp"].DefaultView.Sort = e.SortExpression + " " + ViewState["order"].ToString(); //设置排序 this.GridView1.DataSource = ds.Tables["emp"].DefaultView; //将表的默认视图作为数据源。 this.DataBind(); }
(四)删除
这里需要注意一点:就是获取某一行的主键值。
protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e) { DataKey key = GridView1.DataKeys[e.RowIndex]; string empID = key[0].ToString(); SqlConnection con = DB.CreateCon(); SqlCommand cmd = new SqlCommand("delete from employees where employeeID= '"+empID+"'" , con); con.Open(); cmd.ExecuteNonQuery(); this.BindToDataGird(); }
(五)编辑(更新和取消)
protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e) { this.GridView1.EditIndex = e.NewEditIndex; this.BindToDataGird(); } protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e) { this.GridView1.EditIndex = -1; //设置索引值为负取消编辑。 this.BindToDataGird(); } protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e) { DataKey key = GridView1.DataKeys[e.RowIndex]; string empID = key[0].ToString(); string lastName=((TextBox)(GridView1.Rows [e.RowIndex ] .Cells [2].Controls [0])).Text ; //将GridView中某列中控件强制转换为TextBox,然后取出它的值。 Response.Write(empID +"&" + lastName ); //用于测试。 this.GridView1.EditIndex = -1; this.BindToDataGird(); }
附结果图:
到此,相信大家对"如何理解GridView"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
数据
属性
事件
代码
排序
内容
功能
就是
学习
查询
实用
更深
一行
也就是
兴趣
函数
双向
实用性
实际
控件
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
三级网络技术哪里考
梁猛网络安全
你不在安全服务器上玩游戏
山东常见软件开发资费
乘风破浪软件开发
笔记本电脑打开数据库
sql怎样附加数据库文件
oracle切换数据库语句
数据库qty用什么类型
服务器电源风扇怎么样
山西云萝互联网科技有限责任公司
广东农村网络安全
社交聊天系统软件开发
王者如何注销不同服务器的小角色
金方华网络技术有限公司
服务器和vps建站
签到服务器
网络安全的表达形式
登录不上艾尔登法环服务器
电脑服务器一个月用几个电
数据库的技术文章
网络安全哪所学校好
逃离塔科夫服务器无反应
计算机网络技术与计算机科学
晋华集成电路软件开发
引用数据库索引的原则
海信软件开发工资待遇怎么样
网络安全知识快问快答
广东交友软件开发定制
医保核心业务区网络安全