listview控件就像windows资源管理器右边的内容视图,有大图标、小图标、列表、平铺、详细信息几种展示方式,我这次做的需要看目录下的文件夹和文件以及更新时间,另外再加个文件类型和大小,所以就使用详细信息的方式,具体做法如下:
1 在listview的属性窗口的View属性选择Details
2 Colomns属性中,添加需要的几列,并将Text改成要展示的列名字
3 代码中添加方法
- //获取文件夹和文件列表
- public void GetDirectorysAndFiles(int index)
- {
- string path = datatable_folders.Rows[index]["Folder"].ToString();
- string protocol = datatable_folders.Rows[index]["Protocol"].ToString();
- string username = datatable_folders.Rows[index]["Username"].ToString();
- string password = datatable_folders.Rows[index]["Password"].ToString();
- if (protocol == "local")
- {
- DirectoryInfo dirs = new DirectoryInfo(path);
- foreach (DirectoryInfo dir in dirs.GetDirectories())
- {
- ListViewItem item = new ListViewItem();
- item.Text = dir.Name;
- //item.ImageIndex =
- item.SubItems.Add(dir.LastWriteTime.ToString("yyyy-MM-dd HH:mm"));
- item.SubItems.Add("文件夹");
- item.SubItems.Add("");
- listView1.Items.Add(item);
- }
- foreach (FileInfo file in dirs.GetFiles())
- {
- ListViewItem item = new ListViewItem();
- item.Text = file.Name;
- item.SubItems.Add(file.LastWriteTime.ToString("yyyy-MM-dd HH:mm"));
- item.SubItems.Add(file.Extension);
- item.SubItems.Add(file.Length.ToString());
- listView1.Items.Add(item);
- }
- }
- }
- //listbox双击事件
- private void listBox_folders_MouseDoubleClick(object sender, MouseEventArgs e)
- {
- int index = listBox_folders.IndexFromPoint(e.Location);
- if (index != System.Windows.Forms.ListBox.NoMatches)
- {
- GetDirectorysAndFiles(index);
- }
- }
没有评论:
发表评论