您好,登錄后才能下訂單哦!
這篇文章主要介紹“C#文件瀏覽器制作方法是什么”,在日常操作中,相信很多人在C#文件瀏覽器制作方法是什么問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”C#文件瀏覽器制作方法是什么”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
制作C#文件瀏覽器需要用到幾個控件:
TreeView(用于顯示顯示目錄樹);
ListView(用于顯示文件和目錄列表);
Splitter(用于允許用戶調整TreeView和ListView的大小);
其它的如:MainMenu,ToolBar,StatusBar,ImageList等等就看你的實際需要了。
首先,新建一個C#項目(Windows應用程序),命名為MyFileView,將窗口命名為mainForm,調整主窗口大小(Size)。添加MainMenu,ToolBar,StatusBar,ImageList等控件。
然后,添加TreeView控件,命名為treeView,Dock屬性設為Left,再添加Splitter控件,同樣將Dock屬性設為Left。***添加ListView控件,命名為listView,Dock屬性設為Fill。
界面做好了,那么怎樣才能在這個界面里顯示文件夾和文件呢?這需要我們添加代碼來實現。
C#文件瀏覽器之首先引用以下名字空間:
using System; using System.Drawing; using System.Collections; using System.ComponentModel; using System.Windows.Forms; using System.Data; using System.IO ; using System .Runtime .InteropServices ;
在mainForm_Load事件中添加以下代碼,用于在treeView控件中顯示目錄樹:
private void mainForm_Load( object sender, System.EventArgs e) //獲取邏輯驅動器 string[] LogicDrives=System.IO .Directory .GetLogicalDrives(); TreeNode[] cRoot =new TreeNode[LogicDrives.Length]; for (int i=0;i< LogicDrives.Length ;i++) { TreeNode drivesNode=new TreeNode(LogicDrives[i]); treeView.Nodes .Add (drivesNode); if (LogicDrives[i]!="A:\\" && LogicDrives[i]!="B:\\" ) getSubNode(drivesNode,true); } }
C#文件瀏覽器之創建目錄樹
其中,getSubNode為一方法,用于獲取子目錄,以創建目錄樹節點,參數:PathName為獲取的子目錄在此節點下創建子節點,參數isEnd:結束標志,true則結束。
private void getSubNode(TreeNode PathName,bool isEnd) { if(!isEnd) return; //exit this TreeNode curNode; DirectoryInfo[] subDir; DirectoryInfo curDir=new DirectoryInfo (PathName.FullPath); try { subDir=curDir.GetDirectories(); } catch{} foreach(DirectoryInfo d in subDir) { curNode=new TreeNode(d.Name); PathName.Nodes .Add (curNode); getSubNode(curNode,false); } }
當鼠標單擊目錄節點左邊的+號時,節點將展開,此時,應在AfterExpand事件中加入以下代碼,以獲取此目錄下的子目錄節點:
private void treeView_AfterExpand( object sender, System.Windows.Forms.TreeViewEventArgs e) { try { foreach(TreeNode tn in e.Node .Nodes ) { if (!tn.IsExpanded) getSubNode(tn,true); } } catch{;} }
當鼠標單擊選中目錄節點時,右邊的listView控件應顯示此目錄下的文件和目錄,代碼如下:
private void treeView_AfterSelect( object sender,System.Windows.Forms.TreeViewEventArgs e) { listView.Items.Clear(); DirectoryInfo selDir= new DirectoryInfo(e.Node.FullPath ); DirectoryInfo[] listDir; FileInfo[] listFile; try { listDir=selDir.GetDirectories(); listFile=selDir.GetFiles(); } catch{} foreach (DirectoryInfo d in listDir) listView.Items .Add (d.Name,6); foreach (FileInfo d in listFile) listView.Items .Add (d.Name); }
到此,關于“C#文件瀏覽器制作方法是什么”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。