• GridView中DataKeyNames的应用小结


    一、

    GridView的DataKeyNames属性设为”ID,Name”

    GridView1.DataKeyNames = new string[]{ “ID”,”Name” };

    列中LinkButton的CommandName属性设为”Delete”

    就可以在GridView1_RowDeleting中写代码:

    DataKey key = GridView1.DataKeys[e.RowIndex];
    int id = int.Parse(key[0].ToString());//得到id字段值
    string name = key[1].ToString();//得到name字段值

    二、

    <asp:GridView ID="你的Gridview ID 名(暂定XXXX)" DataKeyNames="表里的ID字段名" OnRowDeleting="XXXX_RowDeleting" …>
    
    protected void XXXX_RowDeleting(object sender, GridViewDeleteEventArgs e) 
    { 
    int nID = Int32.Parse(XXXX.DataKeys[e.RowIndex].Value.ToString()); }
    //这样就获取DataKeyNames指定字段的内容了,一般DataKeyNames用于指向某一个表的ID值,其他的也可以。

    首先绑定DataKeyNames
    GridView.DataKeyNames = new string[] { “字段名称” };

    取值
    string aaa= GridView.DataKeys[e.Row.RowIndex].Value.ToString();

    1、在绑定时设置主键:
    //设置主键;
    GridView1.DataKeyNames = new string[] { “id” };
    GridView1.DataBind();

    2、获取键值:
    GridView1.DataKeys[e.RowIndex].Value.ToString();

    按钮事件里添加
    string str_dk= GridView1.DataKeys[e.Row.RowIndex].Value.ToString();

    如果GridView控件的atDaKeyNames属性设置了表的两个字段(SubjectID,Mode),那么在为GridView绑定数据时对库表的每个记录的指定字段值要作出判断。后台代码中的e.Row.RowIndex即表示GridView的当前行(对应于库表的当前记录);

    而 View1.DataKeys[e.Row.RowIndex].Values[“Mode”].ToString()则获取当前行指定字段(Mode) 的值。

    若前台代码只写:DataKeyNames=”SubjectID’(即DataKeyNames属性只填入一个字段名),

    则后台只需写成: View1.DataKeys[e.Row.RowIndex].Value.ToString()) 即可。
      同样的,要动态获取当前行另一个字段的值可以这样写: View.DataKeys[e.Row.RowIndex].Values[“SubjectID”].ToString())。

    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    廖雪峰python 摘录1
    python web 测试CGI脚本
    AttributeError: 'Athlete' object has no attribute 'top3'
    python类定义小问题
    def函数安装调用的疑惑
    print_lol函数调用
    实现键盘输入信息,按enter键调用摄像头自动拍照
    EditText不能输入表情
    使用videoview播放资源文件夹下的视频
    使用videoview连续自动播放网络视屏
  • 原文地址:https://www.cnblogs.com/PearlRan/p/4833043.html
Copyright © 2020-2023  润新知