我在列表视图中处理一个名为“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");
}
结果是,我的列表视图中没有任何变化,即使我尝试根据上面的代码清除项目。
每当我按下提交按钮时,请帮我清除列表视图中的这些项目。谢谢!
答案 0 :(得分:1)
我认为你可以尝试在clear方法之后使用DataBind()。如果这不起作用,您可以尝试将DataSource设置为null。 再见