今天在使用GridView的RowUpdating来修改数据时,开始总是提示Index超出范围,反复查看了DataKeyNames的设置,发现它只设置了一个字段,因为之前一直不是太明白DataKeyNames的用途,所以才出了这个错误。原来我把DataKeyNames只设置了“UserID"这个字段,但后面的代码却如下:string UserID=GridView1.DataKeys[e.RowI
原创
2013-09-15 11:01:58
991阅读
原文地址:http://www.cnblogs.com/amos/archive/2010/07/16/1778796.html
DataKeyNames作为GridView中的一个属性,我们可以利用这个属性结合DataKeys方便的访问GridView中每个字段的值。
先说怎么用
DataKeyNames可以直接在GridView属性中设置,多个字段之间用逗号分隔,如:Id,Name,
转载
精选
2011-06-28 12:16:42
332阅读
1.DataKeyNames 属性指定表示数据源主键的字段。 当设置了 DataKeyNames 属性时,GridView 控件用来自指定字段的值(数据库中表的值)填充它的 DataKeys 集合,这提
原创
2023-11-07 14:44:22
123阅读
今天在使用GridView的RowUpdating来修改数据时,开始总是提示Index超出范围,反复查看了DataKeyNames的设置,发现它只设置了一个字段,因为之前一直不是太明白DataKeyNames的用途,所以才出了这个错误。原来我把DataKeyNames只设置了“UserID"这个字段,但后面的代码却如下: string UserID=GridView1.DataKeys[e.R
转载
2023-12-28 16:12:09
51阅读
首先在初始化Gridview时候定义主键的数组。GridViewTeacherStudent.DataKeyNames=new string[] {"courseId","studentId","type","level","unit"};在进行删除操作,或者对某行进行操作获得列中的值。string studentId = GridViewTeacherStudent.DataKeys[e.Row
转载
2024-04-25 07:32:04
47阅读
GridView控件用DataKeyNames属性设置主键字段的名称,其可以是一个数组,无DataKeysField属性DataList控件用DataKeysField属性指定或者设置数据源中键字段,无DataKeysNames属性都用DataKeys属性获取属性值 dgv.DataSource = 源数据; dgv.DataKeyNames = new st
转载
2011-06-30 16:54:00
211阅读
2评论
参考链接:http://www.cnblogs.com/emanlee/archive/2010/10/13/1850552.html
转载
2017-02-16 22:44:17
906阅读
【1】 ...
原创
2023-05-16 19:22:26
95阅读
方法一:利用新的属性DataKeys和DataKeyNames 利用DataKeyNames,可以设置一个多个列,用于作为行的主键字段(这里用主键其实不太合适,因为值时允许重复的),之后利用DataKeys旧可以访问这些列的值了。因此,利用这两个新属性,我们就可以继续使用利用列的Visible属性设置来隐藏列的同时,又可以访问隐藏列的值了。 代码如下: G
原创
2014-02-16 15:01:23
739阅读
GridView的DataKeyNames属性设为"ID,Name"GridView1.DataKeyNames = new string[]{ "ID","Name" };列中LinkButton的CommandName属性设为"Delete"就可以在GridView1_RowDeleting中写代码:DataKey key = GridView1.DataKeys[e.RowIndex];in...
转载
2010-05-06 12:47:00
26阅读
2评论
GridViewRow gvr = GridView1.Rows[e.RowIndex];
string id = GridView1.DataKeys[e.RowIndex].Value.ToString();
string ID = e.Keys["ID"].ToString();GridViewRow gvr = GridView1.Rows[e.RowIndex];gvr.FindCont
转载
2024-04-15 23:11:09
18阅读
发一下牢骚和主题无关:protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e) { sqlcon = new SqlConnection(strCon); sqlcon.Open(); string bianhao = Convert.ToString(this.GridView1.DataKeys[e.RowIndex].Value); string beizhu = ((TextBox)(GridView1.Rows[e.RowIndex].Cells[6].Controls[0]...
转载
2013-05-22 22:07:00
103阅读
2评论
第一种解决方法(本人成功):在后台页int num = int.Parse(gv.DataKeys[dr.RowIndex].Values[0].ToString());第二种解决方法:(摘自 )在 GridView/DetailsView 中如果 BoundField 的 Visible=false 时, 回发的时候无法此列的值(GridViewRow.Cells[cellIndex].Text
我在DataGrid删除按纽下写如下代码: 运行后出现错误:索引超出范围。必须为非负值并小于集合大小。参数名:index。 问题出现在:没有设置DATAKEYFIELD设为数据库中的pro_id_n,因为在引用this.dgProduct.DataKeys[e.Item.ItemIndex].ToS...
转载
2005-12-29 23:56:00
470阅读
2评论
ASP.NET2.0中的GRIDVIEW控件真是非常奇怪,不知道MS是怎么考虑的,在GRIDVIEW里,行索引被放在了CommandArgument里面,而不是像DataGrid那样可以利用this.MyDataGrid.DataKeys[e.Item.ItemIndex].ToString()方便的取出主键值,同时我们注意到,如果使用默认的CommandField,<asp:Command
转载
2007-05-31 10:51:00
54阅读
2评论
使用DataList控件本章内容:Ø 1、理解事件冒泡Ø 2、使用模板Ø 3、在DataList中显示数据Ø 4、在DataList中创建多列Ø 5、捕获DataList控件中产生的事件Ø 6、选择DataList中的项Ø 7、使用DataList控件中的DataKeys集合Ø 8、编辑DataList中的项本章介绍在ASP.NET框架中功能最强大的两个控件(DataList控件和DataGrid
GridView控件的常用属性 (1)AllowPaging属性 该属性默认为False,即不启用分页功能,若要允许分页则将该属性值改为True。 (2)AllowSorting属性 该属性默认为False,即不启用排序功能,若要允许排序则将该属性值改为True。 (3)DataKeys属性 当对GridView控件数据进行排序、编辑、修改时一定要设置DataKevs属性为数据表的关键字段的字段
转载
2024-07-17 18:43:20
86阅读
数据库只存储文件一些基本信息,真正文件是存储在目录中,因此记录被更新或是删除时,同时也需要对存储在目录中的文件进行操作,如移动或删除等。在上传时,建议先存记录,再存文件至目录中,在删除记录时,顺序应刚好相反,首先删除目录中的文件,然后删除记录。这也不是一定如此。下面代码演示,在记录更新时,记录的存储目录发生变化,文件也作相应移动。//取得更新记录主键strPrimaryKey=gvMedia.DataKeys[e.RowIndex].Value.ToString();//类别,文件是随类别存储,如果类别有更新,说明文件存储目录随之改变stringmediatypeId=((DropDownLi
转载
2011-03-16 16:01:00
130阅读
2评论