我想制作相同的Window File explorer。
但我不知道如何获取文件默认图标图片。
如果我可以获取文件默认图像(Icon),我想添加到listview。
我的代码如下
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();
}
答案 0 :(得分:1)
创建ImageList并添加图标
var imageList = new ImageList();
imageList.Images.Add("IconKey", icon);
将ImageList分配给ListView
listView.LargeImageList = imageList;
指定列表视图项的图标
listViewItem.ImageKey = "itemImageKey";
或listViewItem.ImageIndex = 1;