关于GridView使用学习总结
由于视频比较旧,涉及到的数据绑定控件DataGrid在VS20xx中已经没有了,取而代之的是GridView。开始觉得视频中的例子没法实现了,其实不然,DataGrid里面的功能GridView里一样都不少,只是形式变化了一下,仔细研究一下发现它们是换汤不换药啊。
(一)DataKeyName属性
(1)DataKeyNames一般都是用来对当前行做唯一标示的,所以一般为数据库的ID。
(2)Keys[ndex],ndex是获取事件对应的行,Keys[ndex]就是获取对应行的唯一标示也就是DataKeyNames所指定列的值。
(3)DataList和Repeater是没有的该属性的。
在代码中这样使用:(定义的该函数在下面都需要调用)
/// 实现数据绑定功能 ///
private void BindToDataGird { SqlConnection con = teCon; SqlDataAdapter sda = new SqlDataAdapter; ctCommand = new SqlCommand("select employeeID,FirstName,LastName,Title,BirthDate from employees ", con); DataSet ds = new DataSet; (ds, "emp"); //将查询到的数据添加到DataSet中。 KeyNames =new string{ "employeeID"}; //DataKeyNames的使用 Source = es["emp"]; Bind; }
如何取值?
DataKey key = Keys[ndex];//其中e为GridViewDelete(或者Edit)EventArgs e string empID = key[0]ring;
(二)分页
由于GridView中封装了分页的功能。这里实现起来很容易。先需要设置属性:AllowPaging/PageSize/PageSetting。然后编写事件代码:
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e) { Index = ageIndex; ToDataGird; }
(三)排序
首先设置AllowSorting属性为true.事件代码:
protected void GridView1_Sorting(object sender, GridViewSortEventArgs e) { if (ViewState["order"] == null) //使用ViewState设置双向排序。 { ViewState["order"] = "ASC"; } else { if (ViewState["order"]ring == "ASC") { ViewState["order"] = "DESC"; } else { ViewState["order"] = "ASC"; } } //数据绑定显示 SqlConnection con = teCon; SqlDataAdapter sda = new SqlDataAdapter; ctCommand = new SqlCommand("select employeeID,FirstName,LastName,Title,BirthDate from employees ", con); DataSet ds = new DataSet; (ds, "emp"); es["emp"] = Expression + " " + ViewState["order"]ring; //设置排序 Source = es["emp"]ultView; //将表的默认视图作为数据源。 Bind; }
(四)删除
这里需要注意一点:就是获取某一行的主键值。
protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e) { DataKey key = Keys[ndex]; string empID = key[0]ring; SqlConnection con = teCon; SqlCommand cmd = new SqlCommand(" from employees where employeeID= +empID+" , con); ; uteNonQuery; ToDataGird; }
(五)编辑(更新和取消)
protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e) { Index = ditIndex; ToDataGird; } protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e) { Index = -1; //设置索引值为负取消编辑。 ToDataGird; } protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e) { DataKey key = Keys[ndex]; string empID = key[0]ring; string lastName=((TextBox)( [ndex ] s [2]rols [0])) ; //将GridView中某列中控件强制转换为TextBox,然后取出它的值。 e(empID +"&" + lastName ); //用于测试。 Index = -1; ToDataGird; }
-
学习总结精选范文(精选17篇)
学习总结精选范文篇1长白山管理公司7月13日,万达集团在泉州万达文华酒店召开20xx年上半年工作会议,会上董事长发表了重要讲话。上半年,万达集团在全国经济持续放缓的情况下,顶住压力,集团领导科学决策,全体员工齐心拼搏,万达集团依然取得较好的成绩,超额完成上半年目标...
-
国小生期末总结400字范文(精选18篇)
国小生期末总结400字范文篇1在这个学期中,我的各个方面有明显的进步和收获。首先,在语文方面我做了许多课外阅读练习和古文练习,提高了我的阅读水平。其次,我还克服了现代文中概括主要内容和理解含义深刻的句子这些弱项,让我的阅读成绩直线上升。在数学方面,我每天坚...
-
社会实践报告范文(精选30篇)
社会实践报告范文篇1经历了将近一周的社会实践,我感慨颇多,我们见到了社会的真实一面,实践生活中每一天遇到的状况还在我脑海里回旋,它给我们带来了意想不到的效果,社会实践活动给生活在都市象牙塔中的大学生们带给了广泛接触社会、了解社会的机会。千里之行,始于足...
-
精选党校培训学习总结(精选7篇)
精选党校培训学习总结篇1为期三个月的培训学习已经结束,通过在党校这样一个大熔炉的锤炼学习,使我在政治理论、党性修养、政策水平、组织能力等方面都有了长足的进步。总的来说有这样几点体会:有心才有新。面对本职工作,要对工作有热心,对人民有诚心,对事业有忠心。...
相关文章
- 学生英文演讲稿:Developing a good learning habit
- Dwight D. Eisenhower: Farewell Address
- 大学生英语演讲范文:Civilized behavior
- 英文读后感之Review of “Is Arrogant and Prejudice”
- 大学生英语演讲稿:WE AND OUR YELLOW RIVER: THRIVING TOGETHER
- Words of Advice at Graduating 毕业赠言
- 英文情书:A Love I Will Never Forget
- 英语演讲稿:My Views on Receiving Education
- Spiro Theodore Agnew: Television News Coverage
- 英文求职信-Design / Creative - Senior Graphic Designer