在Winform开发中,大家普遍利用Listview来显示文件列表。 但是Listview本身并不具备显示当前系统图标的功能。所以要想实现类似的功能,需要利用Icon和Imagelist来辅助。
1, 实例一个imagelist作为图标管理容器。(拖一个imageList控件)
2, 根据文件绝对路径将对应的系统图标加入imagelist
3, 将listview的显示属性View修改为:SmallIcon或者(LargeIcon)
4, 获取对应图标的index 并赋值给ListViewItem
listView1.Items.Clear();
string DemoFolder = "c:\\listview";
DirectoryInfo di = new DirectoryInfo(DemoFolder);
//get all fileinfo in the demo folder
foreach (FileInfo f in di.GetFiles())
{
//add system icon of current file into imagelist
if (!imageList1.Images.Keys.Contains(f.Extension))
{
imageList1.Images.Add(f.Extension, Icon.ExtractAssociatedIcon(f.FullName));
}
ListViewItem lvi = new ListViewItem();
lvi.Text = f.Name;
//ge

在Winform开发中,通过结合Icon和ImageList控件,可以实现在ListView中显示文件的系统图标。主要步骤包括:创建ImageList作为图标容器,根据文件全路径获取系统图标并添加到ImageList,设置ListView的View属性为SmallIcon或LargeIcon,最后将图标索引添加到ListViewItem。
最低0.47元/天 解锁文章
584

被折叠的 条评论
为什么被折叠?



