<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
使用Treeview控制元件實現點左邊的節點,在右邊顯示相關的頁面
名稱空間:System.Windows.Forms
程式集:System.Windows.Forms.dll
顯示標記項的分層集合,每個標記項用一個 TreeNode 來表示。
private void InitializeTreeView() { treeView1.BeginUpdate(); treeView1.Nodes.Add("Parent"); treeView1.Nodes[0].Nodes.Add("child1"); treeView1.Nodes[0].Nodes.Add("child2"); treeView1.Nodes[0].Nodes[1].Nodes.Add("Grandchild"); treeView1.Nodes[0].Nodes[1].Nodes[0].Nodes.Add("Great Grandchild"); treeView1.EndUpdate(); }
對應treeview控制元件的詳細介紹,可參考另一篇文章
獲取或設定此表單的當前多檔案介面 (MDI) 父表單。
Windows 表單應用程式中,經常會在一個表單中開啟另一個表單, 通過表單上的不同選單選擇不同的操作,這種在一個表單中開啟另一個表單的方式可以通過設定 MDI 表單的方式實現
MDI (Multiple Document Interface) 表單被稱為多檔案表單,它是很多 Windows 應用程式中常用的介面設計
MDI 表單的設定並不複雜,只需要將表單的屬性 IsMdiContainer 設定為 True 即可。
this.IsMdiContainer = True;
案例介紹
建立 MDI 表單,並在該表單上設定選單,包括開啟檔案、儲存檔案兩個選單項。
1.使用控制元件ContentMenuStrip,建立兩個子選單
2.在Form主表單的ContentMenuStrip屬性關聯此控制元件,並在屬性isMdiContainer修改為True.
3.子選單事件程式碼編寫。在每個子選單的click事件中編寫如下程式碼
//儲存檔案 SaveFile sf = new SaveFile(); sf.FormBorderStyle = FormBorderStyle.None; sf.MdiParent = this; sf.Show(); //開啟檔案 OpenFile OpF = new OpenFile(); OpF.FormBorderStyle = FormBorderStyle.None; OpF.MdiParent = this; OpF.Show();
遺留點
問題1:在MdiParent表單呼叫子表單時,如果返回父表單,不知如何返回
問題2:巢狀系列,A作為父表單,把B表單作為子表單,但B和C的關係,B相對於C屬於父表單,C屬於子表單。
知識延伸
子表單和父表單相互傳值
名稱空間:System.Windows.Forms
程式集:System.Windows.Forms.dll
表示一個由可移動條組成的控制元件,該可移動條將容器的顯示區域分成兩個大小可調的面板。
畫面組態
程式碼編寫
目錄樹程式碼編寫,建立兩個父節點,汽車和手機,其中汽車父節點下面有賓士和寶馬兩個子節點。手機父節點下面有小米和華為兩個子節點。
程式碼觸發事件為表單的載入(Load)
private void Form1_Load(object sender, EventArgs e) { TreeNode tn1 = new TreeNode("手機"); TreeNode tn2 = new TreeNode("汽車"); tn1.Nodes.Add("小米"); tn1.Nodes.Add("華為"); tn2.Nodes.Add("寶馬"); tn2.Nodes.Add("賓士"); treeView1.Nodes.Add(tn1); treeView1.Nodes.Add(tn2); }
點選目錄樹上子節點,獲取Treeview控制元件的selectnode屬性的text文字值,根據text文字值的不同,進行畫面切換其中text文字代表節點的內容。畫面進行切換,畫面顯示則利用splitcontainer控制元件。
private void treeView1_AfterSelect(object sender, TreeViewEventArgs e) { switch (treeView1.SelectedNode.Text) { case "小米": splitContainer1.Panel2.Controls.Clear(); xiaomi xm = new xiaomi(); //xm.MdiParent = this; xm.Dock = DockStyle.Fill; xm.FormBorderStyle = FormBorderStyle.None; xm.TopLevel = false; xm.Parent = this.splitContainer1.Panel2; xm.Show(); break; case "華為": splitContainer1.Panel2.Controls.Clear(); huawei hw = new huawei(); hw.Dock = DockStyle.Fill; hw.FormBorderStyle = FormBorderStyle.None; hw.TopLevel = false; hw.Parent = this.splitContainer1.Panel2; hw.Show(); break; case "寶馬": splitContainer1.Panel2.Controls.Clear(); BWM bwm = new BWM(); bwm.Dock = DockStyle.Fill; bwm.FormBorderStyle = FormBorderStyle.None; bwm.TopLevel = false; bwm.Parent = this.splitContainer1.Panel2; bwm.Show(); break; case "賓士": splitContainer1.Panel2.Controls.Clear(); benchi bz = new benchi(); bz.Dock = DockStyle.Fill; bz.FormBorderStyle = FormBorderStyle.None; bz.TopLevel = false; bz.Parent = this.splitContainer1.Panel2; bz.Show(); break; } }
動畫演示
到此這篇關於C#實現目錄跳轉(TreeView和SplitContainer)的範例程式碼的文章就介紹到這了,更多相關C# 目錄跳轉內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45