如何获取图标图像

How to get icon image

我想制作相同的 Window 文件资源管理器。

但我不知道如何获取文件默认图标图像。

如果我可以获得文件默认图像(图标),我想添加到列表视图中。

我的代码如下

private void AddFiles(string strPath)
{
       lv_local.BeginUpdate();
       lv_local.Items.Clear();
       iFiles = 0;
          try
           {
           DirectoryInfo di = new DirectoryInfo(strPath + "\");
           FileInfo[] theFiles = di.GetFiles();
           foreach (FileInfo theFile in theFiles)
           {
            iFiles++;
            ListViewItem lvItem = new ListViewItem(theFile.Name);
            lvItem.SubItems.Add(String.Format("{0:N0}", theFile.Length) + "KB");
            lvItem.SubItems.Add(theFile.Extension);
            lvItem.SubItems.Add(theFile.LastWriteTime.ToShortDateString());
            lvItem.ImageIndex = 4;
            // I want to put an image that was read default image
            lv_local.Items.Add(lvItem);
                }
            }
            catch (Exception Exc) 
            {  
            }

            lv_local.EndUpdate();
 }

创建ImageList并添加图标

var imageList = new ImageList();

imageList.Images.Add("IconKey", icon);

将 ImageList 分配给 ListView

listView.LargeImageList = imageList;

为列表视图项分配图标

listViewItem.ImageKey = "itemImageKey";

listViewItem.ImageIndex = 1;