我有一ListView,现在由用户向其中增加文件,这几步没有什么问题,但如何才能把文件所对应的图标显示出来?如.txt文件就显示一个记事本的图标,.exe就显示这个exe文件的图标等!
解决方案 »
- 将二维数组写入dat文件并读取的问题
- C# 检索出指定目录下面的文件数!
- 如何判断一个已经命名的窗口是否已经打开???
- Convert.ToInt32(primeThread.ThreadState) == 96
- 关于HttpWebRequest获取字节流问题
- 如果把本机的网卡禁用了,此时还能得到MAC地址吗?
- 100分请教关于重写OpenFile或者SaveAs对话框的问题
- 请问怎么用c#在一个acess数据库中建立一个access表,并且把一个已经赋值的变量的值写到这个access表的某一列中...谢谢....急用!!!!
- 帮我查查错吧!help
- 请帮忙在C#中实现表格控件
- 如何遍历Button按钮
- AxWebBrowser 控件与和winform 互动的问题
LPCTSTR pszPath,
DWORD dwFileAttributes,
SHFILEINFO FAR *psfi,
UINT cbFileInfo,
UINT uFlags
); 用此函数就可以了 如
首先定义一个变量来,保存返回的图标信息
SHFILEINFO info;
SHGetFileInfo(".bmp",FILE_ATTRIBUTE_NORMAL,&info,sizeof(SHFILEINFO),SHGFI_ICON); 其中图标就在info变量中,即info.hIcon就是图标句柄至于EXE,需要读取文件本身,去寻找图标。不过一般地说,显示一个默认的图标也可以了。
或添加图标列
[DllImport("shell32")]
private static extern int ExtractIcon(int hinst, string lpszExeFileName, int nIconIndex); int icons = ExtractIcon(0, Application.ExecutablePath, 0);
将txt,exe等图标添加到imagelist中,ListView的smallimagelist/stateimagelist属性设imagelist1判断ListView中文件后缀名,this.listView1.Items[i].StateImageIndex=????