C# gridview上的编辑模式,显示要用空值编辑的记录

C# gridview上的编辑模式,显示要用空值编辑的记录,c#,asp.net,sql,gridview,C#,Asp.net,Sql,Gridview,我有一个包含sql表记录的gridview。我已经在3层架构中设置了网页,这样当我选择从gridview编辑特定记录时,它会给我一个formview,其中填充了我在gridview中选择的记录的详细信息。当我在更改formview上的一些详细信息后单击update linkbutton时,gridview显示的是所选行的空白记录。我需要gridview上的这一行包含数据 请帮忙 我的代码隐藏了 protected void Page_Load(object sender, EventArgs e

我有一个包含sql表记录的gridview。我已经在3层架构中设置了网页,这样当我选择从gridview编辑特定记录时,它会给我一个formview,其中填充了我在gridview中选择的记录的详细信息。当我在更改formview上的一些详细信息后单击update linkbutton时,gridview显示的是所选行的空白记录。我需要gridview上的这一行包含数据

请帮忙

我的代码隐藏了

protected void Page_Load(object sender, EventArgs e)
{
    if (!Page.IsPostBack)
    {
        BindGrid();
        fvProfiles.Visible = false;
    }
}

protected void BindGrid()
{
    gvProfiles.DataSource = new UserBO().GetAllUsers();
    gvProfiles.DataBind();
}

 protected void ShowGrid()
{
    fvProfiles.Visible = false;
    gvProfiles.Visible = true;
    btnAdd.Visible = true;
}

protected void HideGrid()
{
    fvProfiles.Visible = true;
    gvProfiles.Visible = false;
    btnAdd.Visible = false;
}

protected void btnAdd_Click(object sender, EventArgs e)
{
    HideGrid();
    fvProfiles.ChangeMode(FormViewMode.Insert);
}
protected void InsertButton_Click(object sender, EventArgs e)
{
    ShowGrid();
}
protected void InsertCancelButton_Click(object sender, EventArgs e)
{
    ShowGrid();
}



protected void gvProfiles_RowCommand(object sender, GridViewCommandEventArgs e)
{
    if (e.CommandName =="Edit")
    {
        gvProfiles.Visible = false;
        fvProfiles.Visible = true;
        btnAdd.Visible = false;
        fvProfiles.ChangeMode(FormViewMode.Edit);
        odsProfiles.SelectParameters["UserId"].DefaultValue = e.CommandArgument.ToString();
        odsProfiles.DataBind();
    }
    if (e.CommandName == "LogicalDelete")
    {
        int i = Convert.ToInt32(e.CommandArgument);
        //call the userBO method to logically delete the record.
        //new UserBO().DeleteUser(i);
    }
    if (e.CommandName == "Delete")
    {
        int i = Convert.ToInt32(e.CommandArgument);
        //call the userBO method to delete the record.
        new UserBO().DeleteUser(i);
    }
}
protected void gvProfiles_RowEditing(object sender, GridViewEditEventArgs e)
{
    BindGrid();
}
protected void UpdateButton_Click(object sender, EventArgs e)
{
    ShowGrid();
}
protected void UpdateCancelButton_Click(object sender, EventArgs e)
{
    ShowGrid();
}
protected void gvProfiles_RowUpdated(object sender, GridViewUpdatedEventArgs e)
{
    BindGrid();
}
}

odsprofiles
是一个objectdatasource。

在数据绑定之前,请尝试清除gv行,如下所示:

protected void BindGrid()
{
    gvProfiles.DataSource = new UserBO().GetAllUsers();
    gvProfiles.Rows.Clear();
    gvProfiles.DataBind();
}

感谢您的响应,但是gvProfiles.Rows collection不包含Clear的定义,并且找不到扩展方法Clear()。