2016-05-27 68 views
0

我正在處理列表視圖中名爲「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 [email protected], " + 
     "[email protected] WHERE [email protected]"; 
    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

請分享你的''Default.aspx'代碼Page_Load'也 –

+0

嘗試使用此代碼清除列表:'lvPO.Clear();' –

+0

分享所有的代碼,也許你正在重新加載列表項。 更正發佈的代碼在〜重定向中添加〜移動連接關閉一排並添加一個try/catch – Emanuele

回答

1

我想你可以試着在clear方法後使用DataBind()。如果這不起作用,您可以嘗試將DataSource設置爲null。 再見

+0

它不起作用。儘管如此,我已經添加了這些東西。我仍然無法清除列表視圖中的細節。 –