• GridView功能汇总


    GridView点击删除后弹对话框再删除 添加一个模版列,编辑模版列,并加入一个linkButton ,在onClientClick中加入JavaScript:return confirm('你确定要删除该行记录吗?');
    在html中找到那个模版列在其中加入这个属性CommandArgument='<%# Bind("ID") %>'
    选中LinkButton的事件Command项,写入LinkButton1_Delete然后在后台代码中这样实现:
    protected void LinkButton1_Delete(object sender, CommandEventArgs e)
         {
             string cateNo=e.CommandArgument.ToString();
             bool hehe = CategoryColl.Delete(cateNo);
             if (hehe == false)
             {
                 Response.Write(@"<script language=""JavaScript"">alert(""此分类包括日志不能删除!"");
             </script>");
             }
             Show();
         }
    完成
    Gridview的RowCommand事件用法
    当单击 GridView 控件中的按钮时发生次事件。
    在单击 GridView 控件中的按钮时,将引发 RowCommand 事件。这使您可以提供一个这样的事件处理方法,即每次发生此事件时执行一个自定义例程。
    GridView 控件中的按钮也可调用该控件的某些内置功能。若要执行这些操作之一,请将按钮的 CommandName 属性设置为下表中的某个值。

    CommandName 值
    说明
    “Cancel”
    取消编辑操作并将 GridView 控件返回为只读模式。引发 RowCancelingEdit 事件。
    “Delete”
    删除当前记录。引发 RowDeletingRowDeleted 事件。
    “Edit”
    将当前记录置于编辑模式。引发 RowEditing 事件。
    “Page”
    执行分页操作。将按钮的 CommandArgument 属性设置为“First”、“Last”、“Next”、“Prev”或页码,以指定要执行的分页操作类型。引发 PageIndexChangingPageIndexChanged 事件。
    “Select”
    选择当前记录。引发 SelectedIndexChangingSelectedIndexChanged 事件。
    “Sort”
    对 GridView 控件进行排序。引发 SortingSorted 事件。
    “Update”
    更新数据源中的当前记录。引发 RowUpdatingRowUpdated 事件。
    尽管单击上表中所列出的按钮时将引发 RowCommand 事件,但仍建议您使用该表中列出的事件来执行该操作。
    GridViewCommandEventArgs 对象传递到事件处理方法,以便您可以确定被单击按钮的命令名和命令参数。
    注意GridViewCommandEventArgs 类未包含一个用于指示单击按钮所在行的属性。如果需要知道哪个行引发了事件,请使用 CommandArgument 属性将行的索引传给事件处理方法。
    1.下面演示当单击gridview中的一个按钮时删除数据库中的一个记录。
    添加一个模版列,编辑模版列,并加入一个linkButton ,在html里把linkButton的CommandName属性设置为del,然后双击gridview的rowCommand产生事情代码,代码如下:
    protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
         {
             if (e.CommandName=="del") {                                                           //判断命令名
              
                  int index = Convert.ToInt32(e.CommandArgument);                 //获得该按钮在gridview中的位置,即第几行
                 GridViewRow row = GridView1.Rows[index];                               //通过索引返回该行
                
                 string i= row.Cells[0].Text.ToString().Trim();                                 //获得该行第1列的数据项
                 DiaryColl.Delete(i);
                 Show();
             }
         }
    2.下面演示添加自定义分页的用法
    在html的gridview中添加分页模板,可以图形化设置,html代码如下:
    <PagerTemplate>
                     共<asp:Label ID="Label1" runat="server" Text='<%#GridView1.PageCount %>'></asp:Label>页 &nbsp; &nbsp;
                     &nbsp;&nbsp;
                     <asp:LinkButton ID="LinkButton2" runat="server" ForeColor="White" CommandName="prev">上一页</asp:LinkButton>
                     <asp:LinkButton ID="LinkButton3" runat="server" ForeColor="White" CommandName="next">下一页</asp:LinkButton>
                 </PagerTemplate>
    下划线为重点要添加的,然后写rowCommand事件代码,如下:
    protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
         {
             if (e.CommandName == "prev")
             {
                 if (GridView1.PageIndex != 0)
                 {
                     GridView1.PageIndex--;
                     Show();
                 }
             }
             if (e.CommandName == "next")
             {
                 GridView1.PageIndex++;
                 Show();
             }
         }
    GridView的RowDataBound事件用法
    在 GridView 控件中将数据行绑定到数据时发生。
    呈现 GridView 控件之前,该控件中的每一行必须绑定到数据源中的一条记录。将某个数据行(用 GridViewRow 对象表示)绑定到 GridView 控件中的数据以后,将引发 RowDataBound 事件。这使您可以提供一个这样的事件处理方法,即每次发生此事件时都执行一个自定义例程(如修改绑定到该行的数据的值)。
    GridViewRowEventArgs 对象将被传给事件处理方法,以便您可以访问正在绑定的行的属性。若要访问行中的特定单元格,请使用 GridViewRowEventArgs 对象的 Cells 属性。使用 RowType 属性可确定正在绑定的是哪一种行类型(标题行、数据行等等)。
    下面的代码示例演示如何使用 RowDataBound 事件在数据源中的字段值显示在 GridView 控件中之前修改该值。
    protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
         {
             if (e.Row.RowType == DataControlRowType.DataRow)
             {
                int id=Convert.ToInt32(e.Row.Cells[4].Text);                                       //获得新闻的类别ID
                Category c = new Category();
                e.Row.Cells[4].Text=c.GetNameById(id);                                             //把新闻的类别ID转换成类别名
             }
       }
  • 相关阅读:
    教大家如何在word 2007中同时打出对齐上下标以及字母头上有波浪线(非编辑器)
    C#返回多个参数 ref及out
    回溯法解决0-1背包问题
    USB peripherals can turn against their users
    50元制作PS2键盘无线监控装置
    物联网安全拔“牙”实战——低功耗蓝牙(BLE)初探
    Bluetooth Low Energy 嗅探
    MagSpoof:能预测并窃取你下一张信用卡号码的廉价设备
    Python 安全类目推荐 (持续更新)
    树莓派安装kali后的简单配置
  • 原文地址:https://www.cnblogs.com/sshh/p/1368929.html
Copyright © 2020-2023  润新知