如何获取图标图像
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;
我想制作相同的 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;