GridView控件使用.doc_第1页
GridView控件使用.doc_第2页
GridView控件使用.doc_第3页
GridView控件使用.doc_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

GridView控件使用要点GridView控件中定制列的使用1、可为GridView控件增加显示图像列(ImageField)、超级链接列(HyperLinkField)等。2、在GridView控件中使用模板列(TemplateField)实例一、为“删除”添加确认方法1:将CommandField“删除”列字段转换为 TemplateFied(模板列),之后到源码视图,在中加入:OnClientClick=return confirm(您确认删除该记录吗?); ,即可添加删除前的“确认”。步骤:首先在GridView的属性对框话框中点击“Columns”进入它的字段设计器,或者在设计窗口直接点击GridView控件右上角的那个小箭头,点击编辑列,进入字段设计器。接着在字段设计器中的左下方选定的字段框中,选择以前已加上的那个CommandField“删除”列,这时在右边它的属性列表下会看到一个将此字段转换为 TemplateFied的项,点击将它转换为TemplateFied列。然后退出字段设计器,切换到源码视图会发现该列已由原来的:变为了:最后在中加入:OnClientClick=return confirm(您确认删除该记录吗?); 这样点击删除时就会先在客户端弹出“您确认删除该记录吗?”对话框,点击确定则进行删除,点击取消则不删除.方法2:双击GridView的OnRowDataBound事件;在后台的GridView1_RowDataBound()方法添加代码,最后代码如下所示:protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) /如果是绑定数据行 if (e.Row.RowType = DataControlRowType.DataRow) if (e.Row.RowState = DataControlRowState.Normal | e.Row.RowState = DataControlRowState.Alternate) LinkButton delete = (LinkButton)e.Row.Cells8.Controls0; /设置JavaScript delete.OnClientClick = return confirm(确定要删除姓名?为 + e.Row.Cells1.Text + 的记录吗); 说明:(1)if (e.Row.RowType = = DataControlRowType.DataRow)e.Row.RowType 是指当前行的类型,包括四类(Header,DataRow,Footer,Pager)DataControlRowType 是GridView的行的类型集合,中的DataRow是数据绑定行这个判断语句的意思就是判断当前行是不是数据绑定行。if (e.Row.RowType = DataControlRowType.DataRow)这个判断,是判断是不是数据行,也就是说,排除了header 跟footer与Pager(2)指定数据控件 GridView中行的状态。在GridView控件中,Header(标题行)和Footer(脚注行)的状态均为Normal,第一行数据行的状态是Normal 第二行数据行的状态是Alternate,第三行数据行又是normal,第四行数据行是Alternate,以此类推。DataControlRowState 里面有Edit 编辑状态 ,Selected 选中状态,Insert 插入状态。if (e.Row.RowState = DataControlRowState.Normal | e.Row.RowState = DataControlRowState.Alternate)这个判断就排除了别的状态GridView行状态说明:关于GridView1_RowDataBound事件:实际上GridView在数据绑定的过程中是逐行绑定的,从GridView最上面的一行(页眉或上分页行)到最下面的一行(页脚或下分页行)逐行建造的。在建造每一行的过程中,又分为两步:创建行和绑定行两个步骤。创建行:就是根据数据源的结构创建出n个单元格,并根据GridView的样式和BoundFField属性的样式设置好每个单元格的样式(背景色,前景色,字体等)。如果该行中有控件或静态文本(设计时已写死的文本,如页眉文本)那在创建的时候也会直接创建控件或静态文本。这只是创建行,还没有绑定行。绑定行:“创建行”执行完后,再进行“绑定行”。绑定行实际上就是把数据源中当前行的数据逐一填写到已创建好的行的相应单元格里去。绑定行执行完毕时才真正把一行数据建造完毕。在GridView绑定DataSource控件的时候实际上就是循环执行“创建行”和“绑定行”的过程。如果我们能深入到每一行的“建造”过程中去,我们就可以根据绑定出来的数据控制当前行的外观样式了。RowCreated事件:是每一行“创建行”完成时被触发的事件。RowDataBound事件:是每一行“绑定行”完成时被触发的事件。因此在绑定GridView显示数据过程也就是循环触发RowCreated事件和RowDataBound事件的过程。下面的代码可以验证上面的阐述:protected void GridView1_RowCreated(object sender, GridViewRowEventArgs e) Response.Write(e.Row.RowType.ToString()+ Created=); protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) Response.Write(e.Row.RowType.ToString()+ DataBound=); 呈现 GridView 控件之前,该控件中的每一行必须绑定到数据源中的一条记录。 将某个数据行(用 GridViewRow 对象表示)绑定到 GridView 控件中的数据以后,将引发 RowDataBound 事

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论