Esempio n. 1
0
        /// <summary>
        /// 右键菜单创建文件事件
        /// </summary>
        private void item_createFile_Click(object sender, EventArgs e)
        {
            SelectedItemsStatus status = GetStatusOfSelectedItemsInListView();
            string      newFile        = GetSelectedDirPathInDirTree() + "NewFile.txt";
            UserControl fileEditer     = new FileEditerControl(_hostService, _shellData, newFile, false);

            _hostService.CreateNewTabPage("FileEdit", fileEditer);
        }
Esempio n. 2
0
        /// <summary>
        /// 右键菜单修改时间事件
        /// </summary>
        private void item_modifyTime_Click(object sender, EventArgs e)
        {
            SelectedItemsStatus status = GetStatusOfSelectedItemsInListView();

            if (status != SelectedItemsStatus.NoSelected)
            {
                listView_File.EditSubItem(listView_File.SelectedItems[0], 1, "modifyTime", false);
            }
        }
Esempio n. 3
0
        /// <summary>
        /// 右键菜单创建文件夹事件
        /// </summary>
        private void item_createDir_Click(object sender, EventArgs e)
        {
            SelectedItemsStatus status = GetStatusOfSelectedItemsInListView();
            string time = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");

            string[]     subItems = new string[] { "NewFolder", time, "0", "0777" };
            ListViewItem item     = new ListViewItem(subItems, 1);

            listView_File.Items.Add(item);
            listView_File.EditSubItem(item, 0, "createDir", true);
        }
Esempio n. 4
0
        /// <summary>
        /// 右键菜单编辑事件
        /// </summary>
        private void item_edit_Click(object sender, EventArgs e)
        {
            SelectedItemsStatus status = GetStatusOfSelectedItemsInListView();

            if (status == SelectedItemsStatus.IsFile)
            {
                string      webFile    = GetSelectedPathInListView(false);
                UserControl fileEditer = new FileEditerControl(_hostService, _shellData, webFile, true);
                _hostService.CreateNewTabPage("FileEdit", fileEditer);
            }
        }
Esempio n. 5
0
 /// <summary>
 /// 获取listview中选中项状态
 /// </summary>
 /// <returns></returns>
 private SelectedItemsStatus GetStatusOfSelectedItemsInListView()
 {
     if (listView_File.SelectedItems.Count > 0)
     {
         SelectedItemsStatus tmp = (SelectedItemsStatus)listView_File.SelectedItems[0].Tag;
         return(tmp);
     }
     else
     {
         return(SelectedItemsStatus.NoSelected);
     }
 }
Esempio n. 6
0
        /// <summary>
        /// 右键菜单复制事件
        /// </summary>
        private void item_copy_Click(object sender, EventArgs e)
        {
            SelectedItemsStatus status = GetStatusOfSelectedItemsInListView();

            if (status == SelectedItemsStatus.IsDir)
            {
                _sourceCopyPath = GetSelectedPathInListView(true);
            }
            else if (status == SelectedItemsStatus.IsFile)
            {
                _sourceCopyPath = GetSelectedPathInListView(false);
            }
            _sourceCopyName = listView_File.SelectedItems[0].Text;
        }
Esempio n. 7
0
        /// <summary>
        /// 右键菜单打开事件
        /// </summary>
        private void rightMenu_FileManager_Opening(object sender, CancelEventArgs e)
        {
            SelectedItemsStatus status = GetStatusOfSelectedItemsInListView();

            if (status == SelectedItemsStatus.NoSelected)
            {
                rightMenu_FileManager.Items["item_refresh"].Visible          = true;
                rightMenu_FileManager.Items["item_upload"].Visible           = true;
                rightMenu_FileManager.Items["item_download"].Visible         = false;
                rightMenu_FileManager.Items["item_downloadToServer"].Visible = true;
                rightMenu_FileManager.Items["item_del"].Visible        = false;
                rightMenu_FileManager.Items["item_edit"].Visible       = false;
                rightMenu_FileManager.Items["item_copy"].Visible       = false;
                rightMenu_FileManager.Items["item_paste"].Visible      = true;
                rightMenu_FileManager.Items["item_paste"].Enabled      = string.IsNullOrEmpty(_sourceCopyPath) ? false : true;
                rightMenu_FileManager.Items["item_rename"].Visible     = false;
                rightMenu_FileManager.Items["item_modifyTime"].Visible = false;
                rightMenu_FileManager.Items["item_add"].Visible        = true;
            }
            else if (status == SelectedItemsStatus.IsDir)
            {
                rightMenu_FileManager.Items["item_refresh"].Visible          = true;
                rightMenu_FileManager.Items["item_upload"].Visible           = true;
                rightMenu_FileManager.Items["item_download"].Visible         = false;
                rightMenu_FileManager.Items["item_downloadToServer"].Visible = true;
                rightMenu_FileManager.Items["item_del"].Visible        = true;
                rightMenu_FileManager.Items["item_edit"].Visible       = false;
                rightMenu_FileManager.Items["item_copy"].Visible       = true;
                rightMenu_FileManager.Items["item_paste"].Visible      = false;
                rightMenu_FileManager.Items["item_rename"].Visible     = true;
                rightMenu_FileManager.Items["item_modifyTime"].Visible = true;
                rightMenu_FileManager.Items["item_add"].Visible        = true;
            }
            else if (status == SelectedItemsStatus.IsFile)
            {
                rightMenu_FileManager.Items["item_refresh"].Visible          = true;
                rightMenu_FileManager.Items["item_upload"].Visible           = true;
                rightMenu_FileManager.Items["item_download"].Visible         = true;
                rightMenu_FileManager.Items["item_downloadToServer"].Visible = true;
                rightMenu_FileManager.Items["item_del"].Visible        = true;
                rightMenu_FileManager.Items["item_edit"].Visible       = true;
                rightMenu_FileManager.Items["item_copy"].Visible       = true;
                rightMenu_FileManager.Items["item_paste"].Visible      = false;
                rightMenu_FileManager.Items["item_rename"].Visible     = true;
                rightMenu_FileManager.Items["item_modifyTime"].Visible = true;
                rightMenu_FileManager.Items["item_add"].Visible        = true;
            }
        }
Esempio n. 8
0
        /// <summary>
        /// 右键菜单粘贴事件
        /// </summary>
        private void item_paste_Click(object sender, EventArgs e)
        {
            SelectedItemsStatus status = GetStatusOfSelectedItemsInListView();

            if (status == SelectedItemsStatus.NoSelected)
            {
                if (_sourceCopyPath != string.Empty)
                {
                    string targetCopyDir = GetSelectedDirPathInDirTree();
                    _fileManager.CopyFileOrDir(_sourceCopyPath, targetCopyDir + _sourceCopyName);
                    //清空复制记录
                    _sourceCopyPath = string.Empty;
                    _sourceCopyName = string.Empty;
                }
            }
        }
Esempio n. 9
0
        /// <summary>
        /// 右键菜单下载事件
        /// </summary>
        private void item_download_Click(object sender, EventArgs e)
        {
            SelectedItemsStatus status = GetStatusOfSelectedItemsInListView();

            if (status == SelectedItemsStatus.IsFile)
            {
                string         webFile        = GetSelectedPathInListView(false);
                string         name           = Path.GetFileName(webFile);
                SaveFileDialog saveFileDialog = new SaveFileDialog();
                saveFileDialog.Title    = "将文件另存为";
                saveFileDialog.FileName = name;
                if (saveFileDialog.ShowDialog() == DialogResult.OK)
                {
                    DownloadFile(webFile, saveFileDialog.FileName);
                }
            }
        }
Esempio n. 10
0
        /// <summary>
        /// 文件列表编辑完成事件
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void listView_File_EditSubItemCompleted(object sender, ListViewPlus.EditSubItemEventArgs e)
        {
            switch (e.UserSate)
            {
            case "rename":
                ((ListView)sender).Items[e.ItemRowIndex].Name = e.Label;
                //发送重命名请求
                //oldFileName,newFileName
                //为了安全起见,这里使用绝对路径
                _selectDirInTree = GetSelectedDirPathInDirTree();
                string oldFileName         = e.OldLabel;
                string newFileName         = e.Label;
                string oldFileNameFullPath = Path.Combine(_selectDirInTree, oldFileName);
                string newFileNameFullPath = Path.Combine(_selectDirInTree, newFileName);
                _fileManager.RenameFileOrDir(oldFileNameFullPath, newFileNameFullPath);
                break;

            case "modifyTime":
                SelectedItemsStatus status = (SelectedItemsStatus)(((ListView)sender).Items[e.ItemRowIndex]).Tag;
                if (status == SelectedItemsStatus.IsDir)
                {
                    string file = GetSelectedPathInListView(true);
                    //修改时间
                    _fileManager.ModifyFileOrDirTime(file, e.Label);
                }
                else if (status == SelectedItemsStatus.IsFile)
                {
                    string file = GetSelectedPathInListView(false);
                    //修改时间
                    _fileManager.ModifyFileOrDirTime(file, e.Label);
                }
                break;

            case "createDir":
                ////打开设置界面
                _selectDirInTree = GetSelectedDirPathInDirTree();
                string dirName     = e.Label;
                string dirFullPath = Path.Combine(_selectDirInTree, dirName);
                _fileManager.CreateDir(dirFullPath);
                break;

            default:
                break;
            }
        }
Esempio n. 11
0
        /// <summary>
        /// 右键菜单下载文件到远程服务器
        /// </summary>
        private void item_downloadToServer_Click(object sender, EventArgs e)
        {
            //FormWget
            SelectedItemsStatus status = GetStatusOfSelectedItemsInListView();

            //打开设置界面
            _selectDirInTree = GetSelectedDirPathInDirTree();
            FormWget formWget = new FormWget(_selectDirInTree);

            formWget.ShowDialog();
            if (formWget.DialogResult == DialogResult.Yes)
            {
                string urlPath  = formWget.UrlPath;
                string savePath = formWget.SavePath;
                formWget.Close();

                _fileManager.Wget(urlPath, savePath);
            }
        }
Esempio n. 12
0
        /// <summary>
        /// 右键菜单删除事件
        /// </summary>
        private void item_del_Click(object sender, EventArgs e)
        {
            DialogResult result = MessageBox.Show("是否继续删除?", "警告", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);

            if (result == DialogResult.Yes)
            {
                SelectedItemsStatus status = GetStatusOfSelectedItemsInListView();
                if (status == SelectedItemsStatus.IsDir)
                {
                    string webDir = GetSelectedPathInListView(true);
                    _fileManager.DeleteFileOrDir(webDir);
                }
                else if (status == SelectedItemsStatus.IsFile)
                {
                    string webFile = GetSelectedPathInListView(false);
                    _fileManager.DeleteFileOrDir(webFile);
                }
            }
        }
Esempio n. 13
0
        /// <summary>
        /// 文件列表双击事件
        /// </summary>
        private void listView_File_DoubleClick(object sender, EventArgs e)
        {
            SelectedItemsStatus status = GetStatusOfSelectedItemsInListView();

            if (status == SelectedItemsStatus.IsDir)
            {
                string webDir = GetSelectedPathInListView(true);
                if (webDir != "")
                {
                    textBox_url.Text = webDir;
                    try
                    {
                        RefreshAllFiles(webDir);
                        AddPathInDirTree(webDir);
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.Message);
                    }
                }
            }
        }
Esempio n. 14
0
        private SelectedItemsStatus GetFileTypeInListView(ListViewItem item)
        {
            SelectedItemsStatus type = (SelectedItemsStatus)item.Tag;

            return(type);
        }