Winform中實現拖拽文件到ListView獲取文件類型(附代碼下載)


場景

效果

 

 

注:

博客主頁:
https://blog.csdn.net/badao_liumang_qizhi
關注公眾號
霸道的程序猿
獲取編程相關電子書、教程推送與免費下載。

實現

新建一個form窗體,然后在窗體中拖拽一個ListView。

在form的shown事件中進行窗體的初始化。

private void Form1_Shown(object sender, EventArgs e)
        {
            listView1.GridLines = true;//在各數據之間形成網格線
            listView1.View = View.Details;//顯示列名稱
            listView1.FullRowSelect = true;//在單擊某項時,對其進行選中
            listView1.HeaderStyle = ColumnHeaderStyle.Nonclickable;//隱藏列標題

            listView1.Columns.Add("文件名", listView1.Width - 65, HorizontalAlignment.Right);//設置頭像
            listView1.Columns.Add("類型", 60, HorizontalAlignment.Center);//設置頭像
        }

 

然后編寫ListView的DragEnter事件

 

 

在事件中設置拖放目標中放置類型為復制。然后檢索數據格式相關聯的數據。

最后傳遞給方法Data_List來給ListView賦值。

private void listView1_DragEnter(object sender, DragEventArgs e)
        {
            e.Effect = DragDropEffects.Copy;       //設置拖放操作中目標放置類型為復制
            String[] str_Drop = (String[])e.Data.GetData(DataFormats.FileDrop, true);//檢索數據格式相關聯的數據
            Data_List(listView1, str_Drop[0]);
        }

 

賦值方法

public void Data_List(ListView LV, string F)  //Form或MouseEventArgs添加命名空間using System.Windows.Forms;
        {
            string enlarge = "";
            //驗證是否是三個字母結尾的后綴名,是則截取后三個后綴名,否則后綴名為空
            if (F.LastIndexOf(".") == F.Length - 4)
            {
                enlarge = F.Substring(F.LastIndexOf(".") + 1, 3);
            }
            ListViewItem item = new ListViewItem(F);
            item.SubItems.Add(enlarge);
            LV.Items.Add(item);
        }

 

代碼下載

https://download.csdn.net/download/BADAO_LIUMANG_QIZHI/12025760


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM