C# 系统应用之ListView控件 (三).添加ContextMenuStrip右键菜单打开删除文件
??????? 在前面講述過使用TreeView控件和ListView控件顯示磁盤目錄信息,但僅僅是顯示信息是不夠的,我們還需要具體的操作.在"個人電腦使用歷史痕跡"項目中我還需要添加"打開文件"和“刪除文件”兩種方法.具體如下:
??????? 在第一篇文章"C# 系統應用之TreeView控件 (一).顯示樹狀磁盤文件目錄及加載圖標"中顯示如下:
??????? http://blog.csdn.net/eastmount/article/details/19453107
? ? ? ? 免費下載地址:http://download.csdn.net/detail/eastmount/7414709
??????? 在第二篇文章"C# 系統應用之ListView控件 (二).加載選中節點文件夾下文件信息"中顯示加載文件信息,如下圖所示:http://blog.csdn.net/eastmount/article/details/21241313
??????? 該文章第三篇主要講述的是為ListView控件中顯示的文件添加一個鼠標右鍵菜單欄"打開文件"和"刪除文件",打開文件能打開具體的文件,刪除文件能刪除至回收站.效果圖如下圖所示:
??????? 打開文件
??????? 刪除文件
一.添加控件ContextMenuStrip
??????? 首先添加一個ContextMenuStrip控件(右鍵關聯控件顯示相關菜單),并在"請在此處鍵入"處添加"打開文件"和"刪除文件"兩欄,將添加兩項的Name設置為openFileToolStripMenuItem和deleteFileToolStripMenuItem.(否則為中英名)
??????? 然后為filesList(ListView)控件添加鼠標事件,添加代碼如下:
??????? 此時,運行軟件點擊文件就會添加了相應的菜單欄.
二.打開文件
??????? 現在需要添加打開文件功能.需要自定義兩個全局變量記錄打開文件的路徑和名稱.
??????? 在更改選定內容AfterSelect事件中為選中的路徑賦值,同時為openFileToolStripMenuItem添加Click事件.具體代碼如下:
#region 打開文件操作 //設置contextMenuStrip1控件中"打開文件"Name為openFile private void openFileToolStripMenuItem_Click(object sender, EventArgs e) {//文件沒有選中if (this.filesList.SelectedItems.Count == 0)return;//獲取選中文件var selectedItem = this.filesList.SelectedItems[0];//全局變量文件名 SubItems[1]表示文件名fileNamePublic = filePathPublic + "\\" + selectedItem.SubItems[1].Text;//MessageBox.Show(fileNamePublic);try{//實例化一個新的Process類 命名空間using System.Diagnostics;using (Process p = new Process()){p.StartInfo.FileName = fileNamePublic; //指定要啟動的文件路徑p.StartInfo.CreateNoWindow = false; //在當前窗口啟動程序//指定窗口的顯示樣式p.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Normal;p.StartInfo.UseShellExecute = true; //使用操作系統的shell啟動進程p.Start(); //開始打開文件}}catch (Exception msg) //異常處理{MessageBox.Show(msg.Message);} } #endregion??????? 它是通過實例化一個Process進程類,指定ProcessStartInfo參數,調用Process的Start()方法執行打開文件.
三.刪除文件
??????? 刪除文件開始準備的方法是使用File.Delete刪除,但是刪除的文件并不是添加至回收站的,同時系統文件不能訪問.所以采用了SHFileOperation外殼函數實現文件操作.為deleteFileToolStripMenuItem添加Click事件,具體代碼如下:
四.總結
??????? 最后,希望該文章對大家有所幫助.這三篇文章主要講述了如何使用C#的TreeView控件加載磁盤目錄信息,同時在ListView控件中顯示具體信息,為ListView控件添加鼠標右鍵ContextMenuStrip控件菜單欄.在這幾篇文章中你可以實現到項目中的:
??????? 1.如何使用TreeView控件添加圖標,添加節點及其展開事件
??????? 2.如何使用ListView控件加載數據,設置標題頭、添加數據、listItem.SubItems.Add等,尤其在數據庫處理等操作或顯示信息時,經常會應用到該控件顯示內容
??????? 3.如何為控件添加右鍵菜單欄ContextMenuStrip,并設置其Item,為其添加相應的響應事件
??????? 最后,希望文章對大家有所幫助,如果文章中有錯誤或不足之處,還請海涵.我這系列文章最后的運行效果如下圖所示,高仿360同時能實現各種功能,具體參照博客每部分:
?
??????? 上面的打開刪除文件源代碼地址:http://download.csdn.net/detail/eastmount/7414709
?
(By:Eastmount 2014-5-28 夜8點 原創CSDNhttp://blog.csdn.net/eastmount/)
?
總結
以上是生活随笔為你收集整理的C# 系统应用之ListView控件 (三).添加ContextMenuStrip右键菜单打开删除文件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C# 网络编程之豆瓣OAuth2.0认证
- 下一篇: C# 基础知识 (四).C#简介及托管代