最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#利用TreeView控件實現(xiàn)目錄跳轉(zhuǎn)

 更新時間:2022年07月28日 09:19:13   作者:yue008  
這篇文章主要為大家詳細(xì)介紹了C#潤滑利用TreeView控件實現(xiàn)目錄跳轉(zhuǎn)功能,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以動手嘗試一下

功能目標(biāo)

使用Treeview控件實現(xiàn)點左邊的節(jié)點,在右邊顯示相關(guān)的頁面

知識點

Treeview

命名空間:System.Windows.Forms

程序集:System.Windows.Forms.dll

顯示標(biāo)記項的分層集合,每個標(biāo)記項用一個 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();
}

對應(yīng)treeview控件的詳細(xì)介紹,可參考另一篇文章

Form.MdiParent 屬性

獲取或設(shè)置此窗體的當(dāng)前多文檔界面 (MDI) 父窗體。

Windows 窗體應(yīng)用程序中,經(jīng)常會在一個窗體中打開另一個窗體, 通過窗體上的不同菜單選擇不同的操作,這種在一個窗體中打開另一個窗體的方式可以通過設(shè)置 MDI 窗體的方式實現(xiàn)

MDI (Multiple Document Interface) 窗體被稱為多文檔窗體,它是很多 Windows 應(yīng)用程序中常用的界面設(shè)計

MDI 窗體的設(shè)置并不復(fù)雜,只需要將窗體的屬性 IsMdiContainer 設(shè)置為 True 即可。

this.IsMdiContainer = True;

案例介紹

創(chuàng)建 MDI 窗體,并在該窗體上設(shè)置菜單,包括打開文件、保存文件兩個菜單項。

1.使用控件ContentMenuStrip,創(chuàng)建兩個子菜單

2.在Form主窗體的ContentMenuStrip屬性關(guān)聯(lián)此控件,并在屬性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窗體調(diào)用子窗體時,如果返回父窗體,不知如何返回

問題2:嵌套系列,A作為父窗體,把B窗體作為子窗體,但B和C的關(guān)系,B相對于C屬于父窗體,C屬于子窗體。

知識延伸

子窗體和父窗體相互傳值

SplitContainer

命名空間:System.Windows.Forms

程序集:System.Windows.Forms.dll

表示一個由可移動條組成的控件,該可移動條將容器的顯示區(qū)域分成兩個大小可調(diào)的面板。

操作步驟

畫面組態(tài)

添加Treeview和splitcontainer控件。

創(chuàng)建四個畫面,四個畫面的name屬性分別為:xiaomi、huawei、BWM、benchi;

代碼編寫

目錄樹代碼編寫,創(chuàng)建兩個父節(jié)點,汽車和手機(jī),其中汽車父節(jié)點下面有奔馳和寶馬兩個子節(jié)點。手機(jī)父節(jié)點下面有小米和華為兩個子節(jié)點。

代碼觸發(fā)事件為窗體的加載(Load)

private void Form1_Load(object sender, EventArgs e)
        {
            TreeNode tn1 = new TreeNode("手機(jī)");
            TreeNode tn2 = new TreeNode("汽車");

            tn1.Nodes.Add("小米");
            tn1.Nodes.Add("華為");
            tn2.Nodes.Add("寶馬");
            tn2.Nodes.Add("奔馳");

            treeView1.Nodes.Add(tn1);
            treeView1.Nodes.Add(tn2);
        }

點擊目錄樹上子節(jié)點,獲取Treeview控件的selectnode屬性的text文本值,根據(jù)text文本值的不同,進(jìn)行畫面切換其中text文本代表節(jié)點的內(nèi)容。畫面進(jìn)行切換,畫面顯示則利用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;

            }
            
            
        }

動畫演示

到此這篇關(guān)于C#利用TreeView控件實現(xiàn)目錄跳轉(zhuǎn)的文章就介紹到這了,更多相關(guān)C#目錄跳轉(zhuǎn)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 深入理解C# 裝箱和拆箱(整理篇)

    深入理解C# 裝箱和拆箱(整理篇)

    通過裝箱和拆箱操作,能夠在值類型和引用類型中架起一做橋梁.換言之,可以輕松的實現(xiàn)值類型與引用類型的互相轉(zhuǎn)換
    2017-08-08
  • C#網(wǎng)絡(luò)編程基礎(chǔ)之進(jìn)程和線程詳解

    C#網(wǎng)絡(luò)編程基礎(chǔ)之進(jìn)程和線程詳解

    這篇文章主要介紹了C#網(wǎng)絡(luò)編程基礎(chǔ)之進(jìn)程和線程詳解,本文對進(jìn)程、線程、線程池知識做了淺顯易懂的講解,并配有代碼實例,需要的朋友可以參考下
    2014-08-08
  • C#調(diào)用Python的URL接口的示例

    C#調(diào)用Python的URL接口的示例

    這篇文章主要介紹了C#調(diào)用Python的URL接口的示例,幫助大家更好的理解和學(xué)習(xí)c#,感興趣的朋友可以了解下
    2020-10-10
  • C#接口歸納總結(jié)實例詳解

    C#接口歸納總結(jié)實例詳解

    本篇文章通過實例代碼對接口做了詳解,需要的朋友可以參考下
    2017-04-04
  • C#漢字轉(zhuǎn)拼音實例(支持多音字)

    C#漢字轉(zhuǎn)拼音實例(支持多音字)

    幾年前就在網(wǎng)上看到過漢字轉(zhuǎn)拼音的程序,大都就是按漢字的編碼轉(zhuǎn)換,單字對應(yīng)的算法實現(xiàn)的。但是都有一個共同的缺點,不能支持多音字。本篇文章主要介紹了C#漢字轉(zhuǎn)拼音實例(支持多音字),有興趣的可以了解一下。
    2016-12-12
  • C#實現(xiàn)圖像銳化的方法

    C#實現(xiàn)圖像銳化的方法

    這篇文章主要介紹了C#實現(xiàn)圖像銳化的方法,涉及C#操作圖像的相關(guān)技巧,需要的朋友可以參考下
    2015-04-04
  • C# CancellationToken和CancellationTokenSource的用法詳解

    C# CancellationToken和CancellationTokenSource的用法詳解

    做了.net core之后,發(fā)現(xiàn)CancellationToken用的越來越平凡了。這也難怪,原來.net framework使用異步的不是很多,而.net core首推異步編程,到處可以看到Task的影子,而CancellationToken正好是異步Task的一個控制器,所以花點時間做個筆記
    2021-06-06
  • Entity Framework主從表的增刪改

    Entity Framework主從表的增刪改

    這篇文章介紹了Entity Framework主從表的增刪改,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-06-06
  • C#如何連接使用Zookeeper

    C#如何連接使用Zookeeper

    Zookeeper作為分布式的服務(wù)框架,雖然是java寫的,但是強(qiáng)大的C#也可以連接使用。而現(xiàn)在主要有兩個插件可供使用,分別是ZooKeeperNetEx和Zookeeper.Net,個人推薦使用ZooKeeperNetEx做開發(fā),本文也已介紹ZooKeeperNetEx為主
    2021-06-06
  • C# CSV文件讀寫的實現(xiàn)

    C# CSV文件讀寫的實現(xiàn)

    本文主要介紹了C# CSV文件讀寫的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03

最新評論

广河县| 陇南市| 富阳市| 和平区| 东莞市| 洛浦县| 厦门市| 兰考县| 宁国市| 瑞金市| 永嘉县| 宿迁市| 新宾| 五原县| 济宁市| 滁州市| 邹平县| 于田县| 修文县| 云阳县| 邛崃市| 宝清县| 文水县| 雷山县| 济宁市| 郸城县| 吉林市| 龙里县| 太仓市| 平塘县| 涞源县| 普宁市| 静海县| 永泰县| 沙雅县| 讷河市| 梁河县| 张家口市| 炉霍县| 额敏县| 余庆县|