WYTC-C#-控制項-TreeView(樹狀檢視)

来源:互联网 发布:看板软件 编辑:程序博客网 时间:2024/05/07 08:08

 using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace TreeView_ex
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            listView1_Initial();
            treeView1_Initial();
            timer1.Enabled = true;
        }


        private void treeView1_Initial()
        {

            treeView1.Nodes.Add("主畫面");
            treeView1.Nodes[0].Nodes.Add("人員註冊管理");
            treeView1.Nodes[0].Nodes[0].Nodes.Add("學生資料管理");
            treeView1.Nodes[0].Nodes[0].Nodes.Add("教職員資料管理");

            treeView1.Nodes[0].Nodes.Add("招生系統管理");

            treeView1.Nodes[0].Nodes.Add("教務管理");

            treeView1.Nodes[0].Nodes[2].Nodes.Add("學生選課");
            treeView1.Nodes[0].Nodes[2].Nodes.Add("課程維護");
            treeView1.Nodes[0].Nodes[2].Nodes.Add("成績管理");
            treeView1.Nodes[0].Nodes[2].Nodes.Add("上課管理");
           
            treeView1.Nodes[0].Nodes.Add("財務管理");
            treeView1.Nodes[0].Nodes[3].Nodes.Add("學生繳費");
            treeView1.Nodes[0].Nodes[3].Nodes.Add("教職員薪資薪資");

            treeView1.Nodes[0].Nodes.Add("系統維護管理");
            treeView1.Nodes[0].Nodes[4].Nodes.Add("更新/備份資料庫");
            treeView1.Nodes[0].Nodes[4].Nodes.Add("線上更新系統");

            ImageList imglist  = new ImageList();
            imglist.Images.Add(Image.FromFile(@"../../img/A01.ico"));
            imglist.Images.Add(Image.FromFile(@"../../img/B01.ico"));
            imglist.Images.Add(Image.FromFile(@"../../img/B02.ico"));
            imglist.Images.Add(Image.FromFile(@"../../img/A02.jpg"));
            imglist.Images.Add(Image.FromFile(@"../../img/A03.ico"));
            imglist.Images.Add(Image.FromFile(@"../../img/C01.ico"));
            imglist.Images.Add(Image.FromFile(@"../../img/C02.ico"));
            imglist.Images.Add(Image.FromFile(@"../../img/C03.jpg"));
            imglist.Images.Add(Image.FromFile(@"../../img/C04.ico"));
            imglist.Images.Add(Image.FromFile(@"../../img/A04.ico"));
            imglist.Images.Add(Image.FromFile(@"../../img/D01.ico"));
            imglist.Images.Add(Image.FromFile(@"../../img/D01.ico"));
            imglist.Images.Add(Image.FromFile(@"../../img/A05.ico"));
            imglist.Images.Add(Image.FromFile(@"../../img/E01.ico"));
            imglist.Images.Add(Image.FromFile(@"../../img/E02.ico"));
            imglist.Images.Add(Image.FromFile(@"../../img/computer.ico"));

            treeView1.ImageList = imglist;

            treeView1.Nodes[0].ImageIndex = 15;
            treeView1.Nodes[0].Nodes[0].ImageIndex = 0;
            treeView1.Nodes[0].Nodes[0].Nodes[0].ImageIndex = 1;
            treeView1.Nodes[0].Nodes[0].Nodes[1].ImageIndex = 2;
            treeView1.Nodes[0].Nodes[1].ImageIndex = 3;
            treeView1.Nodes[0].Nodes[2].ImageIndex = 4;
            treeView1.Nodes[0].Nodes[2].Nodes[0].ImageIndex = 5;
            treeView1.Nodes[0].Nodes[2].Nodes[1].ImageIndex = 6;
            treeView1.Nodes[0].Nodes[2].Nodes[2].ImageIndex = 7;
            treeView1.Nodes[0].Nodes[2].Nodes[3].ImageIndex = 8;
            treeView1.Nodes[0].Nodes[3].ImageIndex = 9;
            treeView1.Nodes[0].Nodes[3].Nodes[0].ImageIndex = 10;
            treeView1.Nodes[0].Nodes[3].Nodes[1].ImageIndex = 11;
            treeView1.Nodes[0].Nodes[4].ImageIndex = 12;
            treeView1.Nodes[0].Nodes[4].Nodes[0].ImageIndex = 13;
            treeView1.Nodes[0].Nodes[4].Nodes[1].ImageIndex = 14;


            treeView1.Nodes[0].SelectedImageIndex = 15;
            treeView1.Nodes[0].Nodes[0].SelectedImageIndex = 0;
            treeView1.Nodes[0].Nodes[0].Nodes[0].SelectedImageIndex = 1;
            treeView1.Nodes[0].Nodes[0].Nodes[1].SelectedImageIndex = 2;
            treeView1.Nodes[0].Nodes[1].SelectedImageIndex = 3;
            treeView1.Nodes[0].Nodes[2].SelectedImageIndex = 4;
            treeView1.Nodes[0].Nodes[2].Nodes[0].SelectedImageIndex = 5;
            treeView1.Nodes[0].Nodes[2].Nodes[1].SelectedImageIndex = 6;
            treeView1.Nodes[0].Nodes[2].Nodes[2].SelectedImageIndex = 7;
            treeView1.Nodes[0].Nodes[2].Nodes[3].SelectedImageIndex = 8;
            treeView1.Nodes[0].Nodes[3].SelectedImageIndex = 9;
            treeView1.Nodes[0].Nodes[3].Nodes[0].SelectedImageIndex = 10;
            treeView1.Nodes[0].Nodes[3].Nodes[1].SelectedImageIndex = 11;
            treeView1.Nodes[0].Nodes[4].SelectedImageIndex = 12;
            treeView1.Nodes[0].Nodes[4].Nodes[0].SelectedImageIndex = 13;
            treeView1.Nodes[0].Nodes[4].Nodes[1].SelectedImageIndex = 14;
        }

        private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
        {
            switch (e.Node.Text)
            {
                case "主畫面":
                    listView1_item_construct("主畫面");
                    break;

                case "人員註冊管理":
                    listView1_item_construct("人員註冊管理");
                    break;

                case "教務管理":
                    listView1_item_construct("教務管理");
                    break;

                case "財務管理":
                    listView1_item_construct("財務管理");
                    break;

                case "系統維護管理":
                    listView1_item_construct("系統維護管理");
                    break;

                default:
                    MessageBox.Show(treeView1.SelectedNode.ToString());
                    break;
            } 
        }

        private void btn_collapse_Click(object sender, EventArgs e)
        {
            treeView1.CollapseAll();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            treeView1.ExpandAll();
        }

 

        private void listView1_Initial()
        {
            listView1_item_construct("主畫面");
            listView1.LargeImageList = listView1_imglist_construct("主畫面");
            listView1.Activation = ItemActivation.Standard;
        }

        private void listView1_ItemActivate(object sender, EventArgs e)
        {
            switch (listView1.SelectedItems[0].Text)
            {
                case "回上一頁":
                    listView1_item_construct("主畫面");
                    break;

                case "人員註冊管理":
                    listView1_item_construct("人員註冊管理");
                    break;

                case "學生資料管理":
                    MessageBox.Show(listView1.SelectedItems[0].ToString());
                    break;

                case "教職員資料管理":
                    MessageBox.Show(listView1.SelectedItems[0].ToString());
                    break;

                case "招生系統管理":
                    MessageBox.Show(listView1.SelectedItems[0].ToString());
                    break;

                case "教務管理":
                    listView1_item_construct("教務管理");
                    break;

                case "學生選課":
                    MessageBox.Show(listView1.SelectedItems[0].ToString());
                    break;

                case "課程維護":
                    MessageBox.Show(listView1.SelectedItems[0].ToString());
                    break;

                case "成績管理":
                    MessageBox.Show(listView1.SelectedItems[0].ToString());
                    break;

                case "上課管理":
                    MessageBox.Show(listView1.SelectedItems[0].ToString());
                    break;


                case "財務管理":
                    listView1_item_construct("財務管理");
                    break;

                case "學生繳費":
                    MessageBox.Show(listView1.SelectedItems[0].ToString());
                    break;

                case "教職員薪資薪資":
                    MessageBox.Show(listView1.SelectedItems[0].ToString());
                    break;

                case "系統維護管理":
                    listView1_item_construct("系統維護管理");
                    break;

                case "備份資料庫":
                    MessageBox.Show(listView1.SelectedItems[0].ToString());
                    break;

                case "線上更新系統":
                    MessageBox.Show(listView1.SelectedItems[0].ToString());
                    break;
            }
        }

        private void listView1_item_construct(string name)
        {
            listView1.Items.Clear();

            switch (name)
            {
                case "主畫面":
                    listView1.Items.Add("人員註冊管理");
                    listView1.Items.Add("招生系統管理");
                    listView1.Items.Add("教務管理");
                    listView1.Items.Add("財務管理");
                    listView1.Items.Add("系統維護管理");
                    listView1_imglist_construct("主畫面");
                    listView1.LargeImageList = listView1_imglist_construct("主畫面");
                    break;

                case "人員註冊管理":
                    listView1.Items.Add("回上一頁");
                    listView1.Items.Add("學生資料管理");
                    listView1.Items.Add("教職員資料管理");
                    listView1_imglist_construct("人員註冊管理");
                    listView1.LargeImageList = listView1_imglist_construct("人員註冊管理");
                    break;

                case "教務管理":
                    listView1.Items.Add("回上一頁");
                    listView1.Items.Add("學生選課");
                    listView1.Items.Add("課程維護");
                    listView1.Items.Add("成績管理");
                    listView1.Items.Add("上課管理");
                    listView1_imglist_construct("教務管理");
                    listView1.LargeImageList = listView1_imglist_construct("教務管理");
                    break;

                case "財務管理":
                    listView1.Items.Add("回上一頁");
                    listView1.Items.Add("學生繳費");
                    listView1.Items.Add("教職員薪資薪資"); //一般性支出
                    listView1_imglist_construct("財務管理");
                    listView1.LargeImageList = listView1_imglist_construct("財務管理");
                    break;

                case "系統維護管理":
                    listView1.Items.Add("回上一頁");
                    listView1.Items.Add("備份資料庫");
                    listView1.Items.Add("線上更新系統");
                    listView1_imglist_construct("系統維護管理");
                    listView1.LargeImageList = listView1_imglist_construct("系統維護管理");
                    break;
            }
        }

        private ImageList listView1_imglist_construct(string name)
        {

            System.Drawing.Size imgsize = new Size();
            imgsize.Height = 70;
            imgsize.Width = 70;

            ImageList imglist = new ImageList();
            imglist.ImageSize = imgsize;

            switch (name)
            {
                case "主畫面":
                    imglist.Images.Add(Image.FromFile(@"../../img/A01.ico"));
                    imglist.Images.Add(Image.FromFile(@"../../img/A02.jpg"));
                    imglist.Images.Add(Image.FromFile(@"../../img/A03.ico"));
                    imglist.Images.Add(Image.FromFile(@"../../img/A04.ico"));
                    imglist.Images.Add(Image.FromFile(@"../../img/A05.ico"));
                    break;

                case "人員註冊管理":
                    imglist.Images.Add(Image.FromFile(@"../../img/back.ico"));
                    imglist.Images.Add(Image.FromFile(@"../../img/B01.ico"));
                    imglist.Images.Add(Image.FromFile(@"../../img/B02.ico"));
                    break;

                case "教務管理":
                    imglist.Images.Add(Image.FromFile(@"../../img/back.ico"));
                    imglist.Images.Add(Image.FromFile(@"../../img/C01.ico"));
                    imglist.Images.Add(Image.FromFile(@"../../img/C02.ico"));
                    imglist.Images.Add(Image.FromFile(@"../../img/C03.jpg"));
                    imglist.Images.Add(Image.FromFile(@"../../img/C04.ico"));
                    break;

                case "財務管理":
                    imglist.Images.Add(Image.FromFile(@"../../img/back.ico"));
                    imglist.Images.Add(Image.FromFile(@"../../img/D01.ico"));
                    imglist.Images.Add(Image.FromFile(@"../../img/D01.ico"));
                    break;

                case "系統維護管理":
                    imglist.Images.Add(Image.FromFile(@"../../img/back.ico"));
                    imglist.Images.Add(Image.FromFile(@"../../img/E01.ico"));
                    imglist.Images.Add(Image.FromFile(@"../../img/E02.ico"));
                    break;
            }

            for (int i = 0; i < listView1.Items.Count; i++)
            {
                listView1.Items[i].ImageIndex = i;
            }

            return imglist;
        }

        private void timer1_Tick(object sender, EventArgs e)
        {
            if ((pictureBox1.Left - panel1.Location.X) < -1700)
                pictureBox1.Left = panel1.Location.X;
            else
                pictureBox1.Left = pictureBox1.Location.X - 1;
        }
    }
}

原创粉丝点击