程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> C# WinForm的listView多行刪除操作

C# WinForm的listView多行刪除操作

編輯:C#入門知識

 listView多行刪除的操作,從數據庫中的刪除。
private void buttonDelete_Click(object sender, EventArgs e)
{
    DialogResult dr = MessageBox.Show("確定要刪除所選記錄?  ", "Photonsoft", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);
    if (dr == DialogResult.OK)
    {
        try
        {
            dbcon.OpenConn(); //打開Oracle連接。
            string id = "";   //此處的id是我的記錄在數據庫中的ID (唯一識別號) 。
            foreach (ListViewItem item in listView1.SelectedItems) //遍歷以選中的記錄。
            {
                for (int i = 0; i < listView1.SelectedItems.Count; i++)  在以選中的記錄中遍歷獲取每個記錄的id並刪除之。
                {
                    if (this.listView1.SelectedItems[i].Selected)     //如果第i行被選中的話,取得該選中行的索引號
                    {
                        id = ds.Tables["notes"].Rows[this.listView1.SelectedIndices[i]][0].ToString();   //獲取選中的第i條記錄在數據庫中的id號。

                        string sql = string.Format("delete from notes where id='{0}'",id); //刪除語句。
                        OracleCommand cmd = new OracleCommand(sql, conn);
                        cmd.ExecuteNonQuery(); //執行刪除。
                        cmd.Dispose();                                               
                    }
                }
            }
            listView1.Refresh(); //刪除結束後刷新listView。
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.ToString(), "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
        }
        finally
        {
            dbcon.CloseConn(); //關閉Oracle連接。
        }
    }
    else
    {
        return;
    }
}

 

二、如果僅是從listView控件上刪除而不是從數據庫中刪除,則此操作要簡單的多。直接按如下操作即可:

foreach (ListViewItem item in this.listView1.SelectedItems)

{

      if(item.Selected)

      {

          item.Remove();

      }

}


摘自 白雲飄飄

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved