首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

GridView编者、删除

2013-01-01 
GridView编辑、删除想做一个 gridview自带的删除事件。。protected void GridView1_RowDeleting(object sende

GridView编辑、删除
想做一个 gridview自带的删除事件。。
    protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
    {
        GridViewRow row = GridView1.Rows[e.RowIndex];
        int ID = int.Parse(GridView1.DataKeys[e.RowIndex].Values[0].ToString());
        sql.delAdmin(ID);

    }

    public void delAdmin(int id)
    {
        cn.Open();
        string del_Admin = "delete from admininfo where Id='" + id + "'";
        SqlCommand cmd = new SqlCommand(del_Admin, cn);
        try
        {
            int i = cmd.ExecuteNonQuery();
            Console.WriteLine("删除成功");
        }
        catch
        {
            Console.WriteLine("删除失败");
        }
        finally
        {
            cmd.Dispose();
            cn.Close();
        }
    }


为什么在我执行删除数据的时候
出现
索引超出范围。必须为非负值并小于集合大小。
参数名: index 

int ID = int.Parse(GridView1.DataKeys[e.RowIndex].Values[0].ToString());

编辑也同样是这个错误。麻烦大家给解下。急。。谢谢
[解决办法]
int ID = int.Parse(GridView1.DataKeys[e.RowIndex].Values[0].ToString()); 

改成:

int ID = int.Parse(GridView1.DataKeys[e.RowIndex].Values.ToString()); 

试试,datakeys只能写一个吧,为什么要加Values[0]?

热点排行