string id = GridView1.DataKeys[GridView1.SelectedIndex].Value.ToString();
索引超出范围。必须为非负值并小于集合大小。但是我取GridView1.SelectedIndex的时候是正常的
DataKeyNames="id"这个也设置了为什么出错呢
索引超出范围。必须为非负值并小于集合大小。但是我取GridView1.SelectedIndex的时候是正常的
DataKeyNames="id"这个也设置了为什么出错呢
解决方案 »
- UpdatePanel 与 Gridview 的CommandField 更新不了
- 再帮忙看下啊。。
- 关于动态创建控件的问题
- 请问asp.net 网站 颜色搜索的问题!
- 验证控件和保存SESSION有什么区别?两种各有什么长处和短处?
- 请问C#能不能在页面开始载入到页面完全载入这段时间内执行一些事物?
- ms IE TreeView 定位到一个指定的节点
- 为什么关闭窗口的语句不起作用?
- datalist中的textbox怎么绑定数据库
- 用session保存了一个struct类型的数据怎么把它取出来?
- Page.ClientScript.RegisterStartupScript没有反应
- 问个输出问题!!!!!!!!
也说不清什么总是,不好判断!
GridView1填充是正常的
GridView1.SelectedIndex取出来是正确的
也设置了DataKeyNames="id"问题是GridView1.DataKeys这里无论索引是多少也出错
索引超出范围。必须为非负值并小于集合大小
那是不是说数据没有填充到DataKeys呢
但我已经设置了DataKeyNames="id"的啊
问题不是这里
而是DataKeys
但我不知道什么问题
郁闷
GridView就这样而已啊 <asp:GridView ID="GridView1" runat="server" AutoGenerateSelectButton="True" DataKeyNames="id" OnSelectedIndexChanged="GridView1_SelectedIndexChanged">
</asp:GridView>
DataSet dataSet = new DataSet();
dataAdapter.Fill(dataSet);
GridView1.DataSource = dataSet.Tables[0];
GridView1.DataBind();