ASP .NET RowUpdating GridView 问题 [英] ASP .NET RowUpdating GridView Troubles

查看:30
本文介绍了ASP .NET RowUpdating GridView 问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在使用 RowUpdating 方法时遇到问题.我的 GridView 已连接到我们本地的 SQL Server,我正在尝试更新数据.这是来自 MSDN 的 RowUpdating 方法的代码.

I'm having trouble with the RowUpdating Method. My GridView is connected to our local SQL Server, and I'm trying to update the data. Here is the code for the RowUpdating Method from MSDN.

protected void TaskGridView_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
        //Retrieve the table from the session object.
        DataTable dt = (DataTable)Session["TaskTable"];

        //Update the values.
        GridViewRow row = GridView1.Rows[e.RowIndex];
        dt.Rows[row.DataItemIndex]["Id"] = ((TextBox)(row.Cells[1].Controls[0])).Text;
        dt.Rows[row.DataItemIndex]["Description"] = ((TextBox)(row.Cells[2].Controls[0])).Text;
        dt.Rows[row.DataItemIndex]["IsComplete"] = ((CheckBox)(row.Cells[3].Controls[0])).Checked;

        //Reset the edit index.
        GridView1.EditIndex = -1;

        //Bind data to the GridView control.
        BindData();

}

我收到此错误:

System.NullReferenceException:未将对象引用设置为对象的实例.

System.NullReferenceException: Object reference not set to an instance of an object.

推荐答案

试试这个代码一次.

protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
    GridViewRow row = (GridViewRow)GridView1.Rows[e.RowIndex];
    int id = Int32.Parse(GridView1.DataKeys[e.RowIndex].Value.ToString());
    TextBox tname = (TextBox)row.FindControl("nam");
    TextBox tques = (TextBox)row.FindControl("que");
    MySqlCommand cmd = new MySqlCommand("update exam set name1=@name,ques=@ques where id = @id", con);
    cmd.Parameters.Add("@id", MySqlDbType.Int16).Value = id;
    cmd.Parameters.Add("@name", MySqlDbType.VarChar, 30).Value = tname.Text.Trim();
    cmd.Parameters.Add("@ques", MySqlDbType.VarChar,40).Value = tques.Text.Trim();
    con.Open();
    cmd.ExecuteNonQuery();
    GridView1.EditIndex = -1;
    bind();
}

这篇关于ASP .NET RowUpdating GridView 问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆