c# winfrom treeview 存入数据以及获取节点的值

下面展示一些 代码片

public Form1()
        {
            InitializeComponent();
            OpQueryMySql();
        }
        private string strSql = "SHOW DATABASES";
        private MySqlConnection msct;
        private MySqlCommand mscd;
        private static string constr = "server=localhost;port=3306;user=root;password=123456;Charset=utf8";
        private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
        {
            if (treeView1.SelectedNode.FullPath == treeView1.SelectedNode.Text)
            {
                string table = treeView1.SelectedNode.Text;//数据表名
                OpQuerytable(table);
                treeView1.SelectedNode.Expand();//展开选中的节点
            }
            else
            {
                int count = treeView1.SelectedNode.Text.Length;             //获取选中节点字符长度
                string str = treeView1.SelectedNode.FullPath;               //获取选中节点从父节点到目标节点的路径
                string str1 = str.Remove(str.LastIndexOf("\\"), count+1);   //获取父节点text,获取数据库名
                // "\\"是转译字符 
            }
            
        }
        
        /// 
        /// 查询数据库操作
        /// 
        /// 
        public void OpQueryMySql()
        {
            try
            {
                msct = new MySqlConnection(constr);
                if (msct != null)
                {
                    msct.Open();
                    Console.WriteLine("查询通道打开");
                    mscd = new MySqlCommand(strSql, msct);
                    MySqlDataReader dr = mscd.ExecuteReader();
                    while (dr.Read())
                    {
                        treeView1.Nodes.Add(dr[0].ToString());
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
            }
            finally
            {
                msct.Close();
            }
        }
        /// 
        /// 查询数据表操作
        /// 
        /// 
        public void OpQuerytable(string bases)
        {
            treeView1.SelectedNode.Nodes.Clear();
            constr += ";database=" + bases;
            try
            {
                msct = new MySqlConnection(constr);
                strSql = "show tables";
                if (msct != null)
                {
                    msct.Open();
                    mscd = new MySqlCommand(strSql, msct);
                    MySqlDataReader dr = mscd.ExecuteReader();
                    while (dr.Read())
                    {
                        treeView1.SelectedNode.Nodes.Add(dr[0].ToString());
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
            }
            finally
            {
                msct.Close();
            }
        }

效果如下:
c# winfrom treeview 存入数据以及获取节点的值_第1张图片

你可能感兴趣的:(c#,开发语言)