📄 browse.cs
字号:
/*private int DotDecide(string dotname)
{
int type = 12;
if(dotname=="TXT"||dotname=="txt")
type = 1;
else if(dotname=="bmp"||dotname=="BMP")
type = 2;
else if(dotname=="jpg"||dotname=="JPG")
type = 3;
else if(dotname=="gif"||dotname=="GIF")
type = 4;
else if(dotname=="wmv"||dotname=="WMV"||dotname=="asf"||dotname=="ASF")
type = 5;
else if(dotname=="doc"||dotname=="DOC")
type = 6;
else if(dotname=="xls"||dotname=="XLS")
type = 7;
else if(dotname=="htm"||dotname=="htm"||dotname=="html"||dotname=="HTML")
type = 8;
else if(dotname=="zip"||dotname=="ZIP")
type = 9;
else if(dotname=="mp3"||dotname=="MP3")
type = 10;
else if(dotname=="exe"||dotname=="EXE")
type = 11;
return type;
}*/
//决定显示
private void DirDecide()
{
if(FileList.FocusedItem!=null)
{
string newstr = FileList.FocusedItem.Text;
if(newstr=="..")
{
path = path.Substring(0,(path.LastIndexOf("\\")));
path = path.Substring(0,path.LastIndexOf("\\")+1);
GetList();
}
else if(FileList.FocusedItem.ImageIndex==0)
{
path += newstr+"\\";
GetList();
}
else if(newstr.Substring(newstr.LastIndexOf(".")+1,3)=="TXT"||newstr.Substring(newstr.LastIndexOf(".")+1,3)=="txt")
{
textedit myedit = new textedit(path,newstr);
myedit.ShowDialog();
GetList();
}
}
}
private void FileList_ItemActivate(object sender, System.EventArgs e)
{
DirDecide();
}
private void menuShow1_Click(object sender, System.EventArgs e)
{
this.FileList.View = View.LargeIcon;
}
private void menuShow2_Click(object sender, System.EventArgs e)
{
this.FileList.View = View.SmallIcon;
}
private void menuShow3_Click(object sender, System.EventArgs e)
{
this.FileList.View = View.List;
}
private void menuShow4_Click(object sender, System.EventArgs e)
{
this.FileList.View = View.Details;
}
private void menuCopy_Click(object sender, System.EventArgs e)
{
if(FileList.FocusedItem!=null)
{
if(FileList.FocusedItem.Text!="..")
{
srcpath = path;
//文件
if(FileList.FocusedItem.ImageIndex!=0)
dorf = true;
else
dorf = false;
srcfilename = FileList.FocusedItem.Text;
//复制的情况
porc = false;
this.menuPaste.Enabled = true;
}
}
}
private void menuCut_Click(object sender, System.EventArgs e)
{
if(FileList.FocusedItem!=null)
{
srcpath = path;
//文件
if(FileList.FocusedItem.ImageIndex!=0)
dorf = true;
else
dorf = false;
srcfilename = FileList.FocusedItem.Text;
//剪切的情况
porc = true;
this.menuPaste.Enabled = true;
}
}
//文件的复制粘贴
private void menuPaste_Click(object sender, System.EventArgs e)
{
string dpath = path;
//判断当前目录
if(FileList.FocusedItem!=null)
{
//如果选的是目录
if(FileList.FocusedItem.ImageIndex==0&&FileList.FocusedItem.Text!="..")
dpath = path + FileList.FocusedItem.Text + "\\";
}
if(dpath!=srcpath)
{
//文件的粘贴/剪切
if(dorf)
{
//判断当前文件是否存在
if(File.Exists(dpath+srcfilename))
{
if(MessageBox.Show("目标文件已经存在,要覆盖里面所有内容吗?", this.Text,MessageBoxButtons.YesNo, MessageBoxIcon.Question,MessageBoxDefaultButton.Button2).ToString()=="Yes")
{
File.Copy(srcpath+srcfilename,dpath+srcfilename,true);
//如果是剪切则删除原文件
if(porc)
{
File.Delete(srcpath+srcfilename);
this.menuPaste.Enabled = false;
}
}
}
else
{
File.Copy(srcpath+srcfilename,dpath+srcfilename);
if(porc)
{
File.Delete(srcpath+srcfilename);
this.menuPaste.Enabled = false;
}
}
}
//复制目录的情况
else
{
//当前目录已存在
if(Directory.Exists(dpath+srcfilename))
{
if(MessageBox.Show("目标目录已经存在,要覆盖吗?", this.Text,MessageBoxButtons.YesNo, MessageBoxIcon.Question,MessageBoxDefaultButton.Button2).ToString()=="Yes")
{
DirCopy(srcpath+srcfilename+"\\",dpath+srcfilename+"\\");
if(porc)
{
Directory.Delete(srcpath+srcfilename);
this.menuPaste.Enabled = false;
}
}
}
else
{
if(porc)
{
Directory.Move(srcpath+srcfilename,dpath+srcfilename);
this.menuPaste.Enabled = false;
}
else
DirCopy(srcpath+srcfilename+"\\",dpath+srcfilename+"\\");
}
}
GetList();
}
else
MessageBox.Show("您不能将自身复制到自身所在目录!", this.Text,MessageBoxButtons.OK, MessageBoxIcon.Asterisk,MessageBoxDefaultButton.Button2);
}
//目录复制函数,递归
private void DirCopy(string sdir,string ddir)
{
//获取目标文件夹里的内容
DirectoryInfo dir = new DirectoryInfo(sdir);
//目标目录不存在则创建
if(!Directory.Exists(ddir))
Directory.CreateDirectory(ddir);
//首先复制文件
foreach (FileInfo f in dir.GetFiles("*.txt"))
{
String name = f.Name;
File.Copy(sdir+name,ddir+name,true);
}
//复制子目录
foreach (DirectoryInfo f in dir.GetDirectories())
{
String name = f.Name;
DirCopy(sdir+name+"\\",ddir+name+"\\");
}
}
//文件目录的删除
private void menuDel_Click(object sender, System.EventArgs e)
{
if(FileList.FocusedItem!=null)
{
if(FileList.FocusedItem.Text!="..")
{
//文件删除
if(FileList.FocusedItem.ImageIndex!=0)
{
if(MessageBox.Show("您确认要删除文件"+path+FileList.FocusedItem.Text+"?", this.Text,MessageBoxButtons.YesNo, MessageBoxIcon.Question,MessageBoxDefaultButton.Button2).ToString()=="Yes")
File.Delete(path+FileList.FocusedItem.Text);
}
//目录删除
else
if(MessageBox.Show("您确认要删除目录"+path+FileList.FocusedItem.Text+"\\以及下面所有文件?", this.Text,MessageBoxButtons.YesNo, MessageBoxIcon.Question,MessageBoxDefaultButton.Button2).ToString()=="Yes")
Directory.Delete(path+FileList.FocusedItem.Text,true);
}
GetList();
}
}
private void menuItem5_Click(object sender, System.EventArgs e)
{
textinput myinput = new textinput(path,"",0);
myinput.ShowDialog();
GetList();
}
private void menuRename_Click(object sender, System.EventArgs e)
{
if(FileList.FocusedItem!=null)
{
if(FileList.FocusedItem.Text!="..")
{
int type = 0;
//文件命名
if(FileList.FocusedItem.ImageIndex!=0)
type = 1;
//目录命名
else
type = 2;
textinput myinput = new textinput(path,FileList.FocusedItem.Text,type);
myinput.ShowDialog();
GetList();
}
}
}
private void menuAbout_Click(object sender, System.EventArgs e)
{
About myabout = new About();
myabout.ShowDialog();
}
private void menuNewtxt_Click(object sender, System.EventArgs e)
{
textedit myedit = new textedit("","untitled.txt");
myedit.ShowDialog();
GetList();
}
private void menuOpen_Click(object sender, System.EventArgs e)
{
DirDecide();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -