ListView的Windows资源管理器
-
19-09-2019 - |
题
你知道任何很好的例子,如何创建ListView控件,将外观和具有相同的方法,Windows资源管理器。
复制,粘贴,显示缩略图??
我必须使用ListView的,因为我不能让用户更改目录,我不能禁用Windows资源管理器这个选项(我的意思是我在哪里可以点击去向上或向下或将路径的地方。
解决方案
我一直建议这个项目,从来没有听说过一个关于投诉它。需要注意的是一个可嵌入浏览器可用,因为Vista中,它是由在的Windows API代码包缠。
要注意的是,这些类型的解决方案,投入了大量的依赖到项目中。考虑权衡的是对成本只需执行打开文件对话框的 FileOk事件和取消OK按钮点击,如果你不喜欢的路径。
其他提示
这并非易事,但你可以看看这个项目一>。这是在VB.Net,但它可以作为灵感的来源。
我写的东西,但我不知道如何在图标点击添加事件得到这个图标的路径。
path = folderBrowserDialog1.SelectedPath;
ImageList imageList1 = new ImageList();
imageList1.ImageSize = new Size(256, 256);
imageList1.ColorDepth = ColorDepth.Depth24Bit;
string[] iconFiles = Directory.GetFiles(path, "*.jpg");
foreach (string iconFile in iconFiles)
{
try
{
imageList1.Images.Add(Image.FromFile(iconFile));
}
catch
{
MessageBox("Error","");
}
}
this.listView1.View = View.LargeIcon;
this.listView1.LargeImageList = imageList1;
for (int j = 0; j < imageList1.Images.Count; j++)
{
ListViewItem item = new ListViewItem();
item.ImageIndex = j;
this.listView1.Items.Add(item);
}
如何重建这个代码??
可以使用Graphics.DrawImage加载慢跑文件并创建缩略图出来。这将仅适用于图像文件的工作。
要获取其他文件类型的缩略图,您必须使用命令行界面IExtractIcon
有关复制/粘贴,使用DataFormats.FileDrop格式的文件的完整路径。
有关一个现成的替代方案中,参阅我们的文件查看控制。
不隶属于 StackOverflow