/// <summary> /// 进入指定文件夹 /// </summary> /// <param name="path">文件夹路径</param> public void Enter(string curPath) { path = curPath; try { if (!System.IO.Directory.Exists(curPath)) { //当前路径无效 available = false; return; } //获取当前路径的所有文件夹 string[] directoryArray = System.IO.Directory.GetDirectories(curPath); directorys = new DirectoryStruct[directoryArray.Length]; for (int i = 0; i < directoryArray.Length; i++) { directorys[i] = new DirectoryStruct(directoryArray[i]); } //获取当前路径的所有文件 string[] fileArray = System.IO.Directory.GetFiles(curPath); files = new FileStruct[fileArray.Length]; for (int i = 0; i < files.Length; i++) { files[i] = new FileStruct(fileArray[i]); } available = true; } catch { available = false; } }
/// <summary> /// ��ʾ�����ϵ��ļ� /// </summary> /// <param name="explorer">����ָ��</param> public void ShowHostDirectory(ExplorerCode explorer) { DirectoryStruct[] directorys; FileStruct[] files; if (!explorer.Available) { MessageBox.Show("��ǰ·��������!"); return; } ltv_HostExplorer.Invoke(new ClearEvent(ListViewClear)); directorys = explorer.Directorys; files = explorer.Files; //��¼��ǰĿ¼(�������ػ��ϴ��ļ�) ltv_HostExplorer.Tag = explorer.Path; //��ӻ��˹��� string parentPath = ICanSeeYou.Common.IO.GetParentPath(explorer.Path); DirectoryStruct lastDirectory = new DirectoryStruct(parentPath); ListViewItem lastItem = new ListViewItem(Constant.ParentPath); lastItem.ImageKey = (string)imageKey["LastPath"]; lastItem.Tag = lastDirectory; UpdateListView(lastItem); ListViewItem[] dItems = new ListViewItem[directorys.Length]; string name; for (int i = 0; i < directorys.Length; i++) { name = ICanSeeYou.Common.IO.GetName(directorys[i].Name); if (name != "") { dItems[i] = new ListViewItem(name); //�ļ���ͼ�� dItems[i].ImageKey = (string)imageKey["Directory"]; dItems[i].Tag = directorys[i]; UpdateListView(dItems[i]); } } ListViewItem[] fItems = new ListViewItem[files.Length]; string type; for (int i = 0; i < files.Length; i++) { name = ICanSeeYou.Common.IO.GetName(files[i].Name); if (name != "") { fItems[i] = new ListViewItem(name); //�ļ�ͼ�� type = ICanSeeYou.Common.IO.GetFileType(files[i].Name).ToLower(); if (imageKey.Contains(type)) fItems[i].ImageKey = (string)imageKey[type]; else fItems[i].ImageKey = (string)imageKey["Unknown"]; fItems[i].Tag = files[i]; UpdateListView(fItems[i]); } } }
/// <summary> /// ��ʾ�����ϵ��ļ� /// </summary> /// <param name="explorer">����ָ��</param> /// <param name="lView">��ʾ������б���ͼ�ؼ�</param> /// <param name="imageHashtable">�ļ�ͼ��ļ�ֵ(��ϣ��)</param> public static void ShowHostDirectory(ExplorerCode explorer, ListView lView, Hashtable imageHashtable) { DirectoryStruct[] directorys; FileStruct[] files; if (!explorer.Available) { MessageBox.Show("��ǰ·��������!"); return; } lView.Items.Clear(); directorys = explorer.Directorys; files = explorer.Files; lView.Tag = explorer.Path; //��ӻ��˹��� string parentPath = IO.GetParentPath(explorer.Path); DirectoryStruct lastDirectory = new DirectoryStruct(parentPath); ListViewItem lastItem = new ListViewItem(Constant.ParentPath); lastItem.ImageKey = (string)imageHashtable["LastPath"]; lastItem.Tag = lastDirectory; lView.Items.Add(lastItem); ListViewItem[] dItems = new ListViewItem[directorys.Length]; string name; for (int i = 0; i < directorys.Length; i++) { name = IO.GetName(directorys[i].Name); if (name != "") { dItems[i] = new ListViewItem(name); //�ļ���ͼ�� dItems[i].ImageKey = (string)imageHashtable["Directory"]; dItems[i].Tag = directorys[i]; lView.Items.Add(dItems[i]); } } ListViewItem[] fItems = new ListViewItem[files.Length]; string type; for (int i = 0; i < files.Length; i++) { name = IO.GetName(files[i].Name); if (name != "") { fItems[i] = new ListViewItem(name); //�ļ�ͼ�� type = IO.GetFileType(files[i].Name).ToLower(); if (imageHashtable.Contains(type)) fItems[i].ImageKey = (string)imageHashtable[type]; else fItems[i].ImageKey = (string)imageHashtable["Unknown"]; fItems[i].Tag = files[i]; lView.Items.Add(fItems[i]); } } }
/// <summary> /// ����ָ���ļ��� /// </summary> /// <param name="path">�ļ���·��</param> public void Enter(string curPath) { path = curPath; try { if (!System.IO.Directory.Exists(curPath)) { //��ǰ·����Ч available = false; return; } //��ȡ��ǰ·���������ļ��� string[] directoryArray = System.IO.Directory.GetDirectories(curPath); directorys = new DirectoryStruct[directoryArray.Length]; for(int i=0;i<directoryArray.Length;i++) directorys[i] = new DirectoryStruct(directoryArray[i]); //��ȡ��ǰ·���������ļ� string[] fileArray = System.IO.Directory.GetFiles(curPath); files = new FileStruct[fileArray.Length]; for (int i = 0; i < files.Length; i++) files[i] = new FileStruct(fileArray[i]); available = true; } catch { available = false; } }