我动态添加了一个gridview,然后想删除这个girdview的某行,该整么办(跟数据库无关)

解决方案 »

  1.   

    就是手动添加的数据保存到gridview,然后我想编辑这些数据,或者删掉,我添加了个temp列,放了一个linkbutton按钮,点了后删掉这一行,到这里我不晓得怎么写了,这些数据不是连数据库来的,都是我在页面上操作生成的
      

  2.   

    给你的linkbutton增加onclick事件 类似这样子:
    <asp:ImageButton ID="ImageButtonDelete" runat="server" CommandName="delete" OnClick="Button_Click" OnClientClick="return DeleteConfirm();" 
                                    ImageUrl="~/Images/delete.gif" Height="14px" Width="16px" />
    在后台这样这些:
      protected void Button_Click(object sender, EventArgs e)
        {
            string cmd_name = string.Empty;
            Control button = sender as Control;        if (button is ImageButton)
            {
                cmd_name = (button as ImageButton).CommandName;
            }
            else if (button is Button)
            {
                cmd_name = (button as Button).CommandName;
            }        switch (cmd_name.ToLower())
            {            case "addnew":
                    this.DoAddNew(button);
                    break;
                case "delete":
                    this.DoDelete(button);
                    break;
                //case "checkname":
                //    this.DoCheck(button);
                //    break;            default:
                    break;
            }    }    private void DoDelete(Control button)
        {
            Control _temp = button.NamingContainer;        string contacter_name = (_temp.FindControl("label_contact_name") as  Label).Text.Trim();
            string site = Request.QueryString["Site"].ToString().Trim();
            string domain = Request.QueryString["Domain"].ToString().Trim();
            string bname = Request.QueryString["BName"].ToString().Trim();
             
            
     using (SqlConnection connection = new SqlConnection(Qisda.ITARM.Entity.Configuration.ConnectionString))
            {
                SqlTransaction transaction = null;
                connection.Open();
                transaction = connection.BeginTransaction();
                try
                {                ContactWindowList.DeleteContacters(transaction, bname, domain, site, contacter_name);
                    transaction.Commit();            }
                catch (Exception ex)
                {
                    throw ex;
                    transaction.Rollback();
                }
                finally
                {
                    if (connection.State != ConnectionState.Closed)
                    {
                        connection.Close();
                    }
                }
                
            }
            this.InitConacter();    }
      

  3.   

    在事件里获取点击的是第几行
    dt.rows.remove()
    然后重新databind()