/// <summary> /// 右键菜单修改时间事件 /// </summary> private void item_modifyTime_Click(object sender, EventArgs e) { List <FileInfo> fileInfos = GetSelectedFilesInListView(); SelectedFilesStatus status = GetStatusOfSelectedFilesInListView(fileInfos); if (status != SelectedFilesStatus.NoSelected) { listView_File.EditSubItem(listView_File.SelectedItems[0], 1, "modifyTime", false); } }
/// <summary> /// 文件列表双击事件 /// </summary> private void listView_File_DoubleClick(object sender, EventArgs e) { List <FileInfo> fileInfos = GetSelectedFilesInListView(); SelectedFilesStatus status = GetStatusOfSelectedFilesInListView(fileInfos); if (status == SelectedFilesStatus.IsDir) { string webDir = fileInfos[0].FullName; RefreshAllFiles(webDir); } }
/// <summary> /// 右键菜单复制事件 /// </summary> private void item_copy_Click(object sender, EventArgs e) { List <FileInfo> fileInfos = GetSelectedFilesInListView(); SelectedFilesStatus status = GetStatusOfSelectedFilesInListView(fileInfos); if (status == SelectedFilesStatus.IsDir || status == SelectedFilesStatus.IsFile) { _sourceCopyPath = fileInfos[0].FullName; _sourceCopyName = Path.GetFileName(fileInfos[0].FullName); } }
/// <summary> /// 右键菜单编辑事件 /// </summary> private void item_edit_Click(object sender, EventArgs e) { List <FileInfo> fileInfos = GetSelectedFilesInListView(); SelectedFilesStatus status = GetStatusOfSelectedFilesInListView(fileInfos); if (status == SelectedFilesStatus.IsFile) { string webFile = fileInfos[0].FullName; UserControl fileEditer = new FileEditerControl(_host, _shellData, webFile, true); _host.Ui.CreateNewTabPage("FileEdit", fileEditer); } }
/// <summary> /// 右键菜单打开事件 /// </summary> private void rightMenu_FileManager_Opening(object sender, CancelEventArgs e) { List <FileInfo> fileInfos = GetSelectedFilesInListView(); SelectedFilesStatus status = GetStatusOfSelectedFilesInListView(fileInfos); if (status == SelectedFilesStatus.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 == SelectedFilesStatus.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 == SelectedFilesStatus.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; } }
/// <summary> /// 右键菜单粘贴事件 /// </summary> private void item_paste_Click(object sender, EventArgs e) { List <FileInfo> fileInfos = GetSelectedFilesInListView(); SelectedFilesStatus status = GetStatusOfSelectedFilesInListView(fileInfos); if (status == SelectedFilesStatus.NoSelected) { if (_sourceCopyPath != string.Empty) { string targetCopyDir = GetCurrentDirPath(); _fileManager.CopyFileOrDir(_sourceCopyPath, Path.Combine(targetCopyDir, _sourceCopyName)); //清空复制记录 _sourceCopyPath = string.Empty; _sourceCopyName = string.Empty; } } }
/// <summary> /// 右键菜单删除事件 /// </summary> private void item_del_Click(object sender, EventArgs e) { DialogResult result = MessageBox.Show("Continue To Delete?", "Warning", MessageBoxButtons.YesNo, MessageBoxIcon.Warning); if (result == DialogResult.Yes) { List <FileInfo> fileInfos = GetSelectedFilesInListView(); SelectedFilesStatus status = GetStatusOfSelectedFilesInListView(fileInfos); if (status == SelectedFilesStatus.IsDir || status == SelectedFilesStatus.IsFile) { string webDir = fileInfos[0].FullName; //提前删除文件夹节点,如果删除失败可能会影响(待解决) RemoveDirInDirTree(treeView_Dirs, webDir, _isWin); _fileManager.DeleteFileOrDir(webDir); } } }
/// <summary> /// 右键菜单下载事件 /// </summary> private void item_download_Click(object sender, EventArgs e) { List <FileInfo> fileInfos = GetSelectedFilesInListView(); SelectedFilesStatus status = GetStatusOfSelectedFilesInListView(fileInfos); if (status == SelectedFilesStatus.IsFile) { string webFile = fileInfos[0].FullName; string name = Path.GetFileName(webFile); SaveFileDialog saveFileDialog = new SaveFileDialog(); saveFileDialog.Title = "Save File As"; saveFileDialog.FileName = name; if (saveFileDialog.ShowDialog() == DialogResult.OK) { DownloadFile(webFile, saveFileDialog.FileName); } } }