清除列表视图中的项目时出错

时间:2016-05-27 05:32:25

标签: c# asp.net

我在列表视图中处理一个名为“lvPO”的问题。每当我点击带有此代码的“提交”按钮时,我就无法清除列表视图中的记录。

代码:

protected void btnSubmit_Click(object sender, EventArgs e)
{
    con.Open();
    SqlCommand cmd = new SqlCommand();
    cmd.Connection = con;
    cmd.CommandText = @"INSERT INTO PurchaseOrders VALUES (@SupplierID, @UserID,
        @PaymentMethod, @PurchaseDate, @PaymentDate, @DeliveryDate, @Status, @Remarks); 
        SELECT TOP 1 PONo FROM PurchaseOrders ORDER BY PONo DESC;";
    cmd.Parameters.AddWithValue("@SupplierID", ddlSupp.SelectedValue);
    cmd.Parameters.AddWithValue("@UserID", 1);
    cmd.Parameters.AddWithValue("@PaymentMethod", ddlPM.SelectedValue);
    cmd.Parameters.AddWithValue("@PurchaseDate", DateTime.Now);
    cmd.Parameters.AddWithValue("@PaymentDate", DBNull.Value);
    cmd.Parameters.AddWithValue("@DeliveryDate", DBNull.Value);
    cmd.Parameters.AddWithValue("@Status", DBNull.Value);
    cmd.Parameters.AddWithValue("@Remarks", txtRemarks.Text);
    int PONo = (int)cmd.ExecuteScalar();


    cmd.CommandText = "UPDATE PurchaseOrders SET Status=@Status, " +
        "PaymentDate=@PaymentDate WHERE PONo=@PONo";
    cmd.Parameters.Clear();
    cmd.Parameters.AddWithValue("@PONo", PONo);
    cmd.Parameters.AddWithValue("@Status", "Purchased");
    cmd.Parameters.AddWithValue("@PaymentDate", DBNull.Value);
    cmd.ExecuteNonQuery();
    lvPO.Items.Clear();
    con.Close();
    Response.Redirect("Default.aspx");

}

结果是,我的列表视图中没有任何变化,即使我尝试根据上面的代码清除项目。

每当我按下提交按钮时,请帮我清除列表视图中的这些项目。谢谢!

1 个答案:

答案 0 :(得分:1)

我认为你可以尝试在clear方法之后使用DataBind()。如果这不起作用,您可以尝试将DataSource设置为null。 再见