如何在c# treeview控件动态绑定数据库,实现2级目录,添加父节点并在父节点下添加子节点 30

如何在c#treeview控件动态绑定数据库,实现2级目录,添加父节点并在父节点下添加子节点。数据库是sqlite... 如何在c# treeview控件动态绑定数据库,实现2级目录,添加父节点并在父节点下添加子节点 。数据库是sqlite 展开
 我来答
创作者zUzVB1Sl31
2015-06-11 · 编程类资料、英语学习资料
创作者zUzVB1Sl31
采纳数:1331 获赞数:5974

向TA提问 私信TA
展开全部

那就看看我做的,建立一个mutua类文件,在里面写代码

namespace *******
{
    class mutua
    {
        public static SqlConnection conn = null;
        public DataSet ds = null;
        public SqlDataAdapter sda = null;
        public String ExceptionStr = "";
        public void Openlink()
        {
            conn = new SqlConnection();
            conn.ConnectionString = "Server=192.168.1.240;uid=sa;pwd=chaimisin8712*;database=GZ_DATA";
            try
            {
                conn.Open();
            }
            catch
            {
                conn.Close();
            }
        }
        public void linkSQL(String sql)
        {
            if (conn != null)
            {
                ds = new DataSet();
                sda = new SqlDataAdapter();
                sda.SelectCommand = new SqlCommand(sql, conn);
                SqlCommandBuilder builder = new SqlCommandBuilder(sda);
                sda.Fill(ds);
            }
        }
     }
 }

启动窗体初始化时就openlink打开链接,后面应用到窗体使用treeview就写这样的代码


        void getView()
        {
            mutua s = new mutua();
            mutua d = new mutua();
            mutua e = new mutua();
            s.linkSQL("Select Distinct bm from a_gydy order by bm");
            if (s.ds != null)
            {
                for (int i = 0; i < s.ds.Tables[0].Rows.Count; i++)
                {
                    treeView1.Nodes.Add(s.ds.Tables[0].Rows[i][0].ToString());
                    d.linkSQL("Select Distinct gy from a_gydy where bm='" + s.dss.Tables[0].Rows[i][0].ToString() + "' order by gy");  
                    if (d.ds != null)
                    {
                        for (int j = 0; j < d.ds.Tables[0].Rows.Count; j++)
                        {
                            treeView1.Nodes[i].Nodes.Add(d.ds.Tables[0].Rows[j][0].ToString());
                            d.linkSQL("Select Distinct gw from c_gy where bm='" + s.ds.Tables[0].Rows[i][0].ToString() + "' and gy='" + d.ds.Tables[0].Rows[j][0].ToString() + "' and gw<>'' order by gw");
                            if (e.ds != null)
                            {
                                for (int k = 0; k < e.ds.Tables[0].Rows.Count; k++)
                                {
                                    treeView1.Nodes[i].Nodes[j].Nodes.Add(e.ds.Tables[0].Rows[k][0].ToString());
                                }
                            }
                        }
                    }
                }
            }

给treeView1加了三级目录

更多追问追答
追问
我已经写好了,就是报错
就一个
67181290
2015-06-11 · TA获得超过1023个赞
知道小有建树答主
回答量:1645
采纳率:0%
帮助的人:324万
展开全部
那挨接
追问
啥意思
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式