Beispiel #1
0
 /// <summary>
 /// 打开指定路径
 /// </summary>
 /// <param name="path">路径</param>
 /// <param name="lView">显示结果的列表视图控件</param>
 /// <param name="imageHashtable">文件图标的键值(哈希表)</param>
 public static void OpenDirectory(string path, ListView lView, Hashtable imageHashtable)
 {
     if (path == "")
     {
         OpenRoot(lView, imageHashtable);
     }
     else
     {
         ExplorerCode explorer = new ExplorerCode();
         explorer.Enter(path);
         ShowHostDirectory(explorer, lView, imageHashtable);
     }
 }
Beispiel #2
0
        /// <summary>
        /// 发送文件夹内的信息(当前路径下的文件和文件夹)
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="code"></param>
        private void sendDirectoryDetial(BaseCommunication sender, Code code)
        {
            DoubleCode tempcode = code as DoubleCode;

            if (tempcode != null)
            {
                if (tempcode.Body != "")
                {
                    ExplorerCode explorer = new ExplorerCode();
                    explorer.Enter(tempcode.Body);
                    sender.SendCode(explorer);
                }
            }
        }
Beispiel #3
0
 /// <summary>
 /// �����ļ����ڵ���Ϣ(��ǰ·���µ��ļ����ļ���)
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="code"></param>
 private void sendDirectoryDetial(BaseCommunication sender, Code code)
 {
     DoubleCode tempcode = code as DoubleCode;
     if (tempcode != null)
     {
         if (tempcode.Body != "")
         {
             ExplorerCode explorer = new ExplorerCode();
             explorer.Enter(tempcode.Body);
             sender.SendCode(explorer);
         }
     }
 }
Beispiel #4
0
        /// <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]);
                }
            }
        }
Beispiel #5
0
        /// <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]);
                }
            }
        }