0
protected void schgrid_RowDataBound(object sender, GridViewRowEventArgs e)
{
            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                //getting username from particular row
                string schlName = Convert.ToString(DataBinder.Eval(e.Row.DataItem, "schlName"));
                //identifying the control in gridview
                ImageButton lnkbtnresult = (ImageButton)e.Row.FindControl("imgbtnDelete");
                //raising javascript confirmationbox whenver user clicks on link button
                lnkbtnresult.Attributes.Add("onclick", "javascript:return ConfirmationBox('" + schlName + "')");
            }
}

这是上面一行的错误:

你调用的对象是空的

protected void schgrid_RowEditing(object sender, GridViewEditEventArgs e)
{
        schgrid.EditIndex = e.NewEditIndex;

        if (txtSearch.Text == "")
        {
            BindSchoolDetails();
        }
        else
        {
            BindSearchDetails();
        }
    }

每当我使用rowEditing时,都会引发异常,schgrid_RowDataBound其中实际用于删除 gridview 记录。

请帮我解决这个问题。给我看一些代码来纠正这个问题

4

2 回答 2

0

如果 lnkbtnresult 为 null,则可能是因为控件未调用 imgbtnDelete。

于 2012-08-18T23:32:09.560 回答
0

据我所知,您的lnkbtnresult必须为空,您可以在调试时检查它的值,然后再遇到错误行。由于提供给 DataBinder.Eval 的名称(字符串“schlName”)错误,该图像按钮可能为空。只需尝试检查您用于 schlName 的 ID 是否正确。把你的aspx代码也放上去,会很有帮助的。

于 2012-08-18T21:40:32.523 回答