【问题标题】:Delete Gridview row fires on each page refresh每次页面刷新时删除 Gridview 行触发
【发布时间】:2014-05-30 22:31:26
【问题描述】:

我有一个网格视图,当单击行上的删除按钮时,它会从 xml 文件中删除数据。问题是在我删除一行并刷新页面后,即使未单击其删除行按钮,以下行也会在每次页面刷新时自动删除 我不知道如何解决这个问题 这是我的删除功能:

BindGridView();
DataSet dsGrid = (DataSet)BankGrid.DataSource;
dsGrid.Tables[0].Rows[BankGrid.Rows[e.RowIndex].DataItemIndex].Delete();
dsGrid.WriteXml(Server.MapPath("XMLFile.xml"));
BindGridView();

【问题讨论】:

    标签: c# asp.net xml gridview delete-row


    【解决方案1】:

    您的删除代码应该位于网格视图行删除事件中

       DataSet dsGrid =  banksDataSet.ReadXml(filePath); //global variable
     protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
    {
    
     dsGrid.Tables[0].Rows[BankGrid.Rows[e.RowIndex].DataItemIndex].Delete();
     dsGrid.AcceptChanges();
     dsGrid.WriteXml(Server.MapPath("XMLFile.xml"));
     BindGridView();
    
    }
      protected void BindGridView()
               {
           GridView1.Datasource=dsGrid;
           Gridview1.DataBind();
                }
    

    在你的页面加载

       protected void Page_Load(object sender, EventArgs e)
    {
    
      if (!Page.IsPostBack)
        {
          BindGridView()
        }
    
        }
    

    【讨论】:

    • 数据集 dsGrid = (DataSet)BankGrid.DataSource;不工作
    • 如何填充数据源?
    • 这是删除函数 protected void BtnDelete_Command(object sender, CommandEventArgs e) { int index = Int32.Parse(e.CommandArgument.ToString()); BindGridView(); DataSet dsGrid = (DataSet)BankGrid.DataSource; dsGrid.Tables[0].Rows[BankGrid.Rows[index].DataItemIndex].Delete(); dsGrid.WriteXml(Server.MapPath("XMLFile.xml")); BindGridView(); }
    • 这是受页面加载保护的 void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { DataSet bankDataSet;字符串文件路径 = Server.MapPath("XMLFile.xml");银行数据集 = 新数据集(); //将XML文件的内容读入DataSet bankDataSet.ReadXml(filePath); BankGrid.DataSource = 银行数据集.Tables[0].DefaultView; BankGrid.DataBind(); } }
    • 当您加载数据集时,您不必强制转换它。请参阅我更新的答案。
    猜你喜欢
    • 1970-01-01
    • 2012-03-12
    • 2011-06-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多