如何根据每个ListView文件的扩展名获取缩略图



我正在使用它从USB拇指中检索特定文件。

    public void leerArchivosUSB()
    {
        var files = Directory.EnumerateFiles("W:\", "*.*", SearchOption.AllDirectories)
        .Where(s => s.ToLower().EndsWith(".doc") || s.ToLower().EndsWith(".docx") || s.ToLower().EndsWith(".pdf") || s.ToLower().EndsWith(".xls") || s.ToLower().EndsWith(".xlsx") || s.ToLower().EndsWith(".ppt") || s.ToLower().EndsWith(".pptx") || s.ToLower().EndsWith(".jpg") || s.ToLower().EndsWith(".php"));
        foreach (var file in files)
        {
            listView1.Items.Add(file);
        }
    }

但我想根据扩展名在列表视图上设置图标,或者为提供的每个扩展名制作自己的图标。

您没有说明您使用的是winforms还是WPF。如果是后者,那么我建议您考虑使用DataTemplate来定义列表框项目的显示方式。您可以使用模板中的TextBlock作为文件名,使用Image作为图标。您可以使用转换器从文件名中获取图标。

现在在iPad上,所以不能发布实际的代码,但搜索一下,你会发现很多DataTemplates和转换器的例子。如果您遇到问题,请用您的代码更新您的问题,我们可以帮助您解决。

最新更新