小弟新手,用C#做asp.net,遇到难题了,麻烦大家多帮帮忙啊~~问题详细如下:
    我的想法是,页面分左右两部分,左边是treeview绑定sql数据库中两个表(ssxm,zdxx)的一些字段(ssxm,txzh,zdmc),右边是很多个textbox,单击treeview某个节点,在右边区域的textbox里显示相应的数据。比如,treeview上第一层节点绑定到表ssxm的字段ssxm(显示为ssxm这样的格式),第二层节点绑定到表zdxx里的txzh.zdmc(显示为txzh.zdmc这样的格式),当然第二层节点要对应于相应的第一层节点上(两个表ssxm、zdxx里都有ssxmid字段)。绑定成功后,单击第二层节点的时候,右边区域所有的textbox显示该节点对应的数据。
    不知道我这样的想法,能实现吗?如果能,那第一步treeview的绑定怎么实现?关于绑定问题,我在网上搜了很多,也请教过不少朋友,都没能顺利的实现功能。第二步,treeview绑定之后,怎么能实现单击节点的时候,右边区域的textbox自动显示相对应于该节点的数据?    小弟新手,还请各位高手不吝赐教,感激不尽!尽可能详细点,好吗?分不够可以再加!!!

解决方案 »

  1.   

    框架怎么做呢?是不是要给每一个节点做一个页面aspx???那样的话,如果数据库里的数据很多的话(比如几千条),要做几千个页面aspx吗??还有,以后的数据会越来越多,甚至几万条,是不是还要动态创建几万个aspx?小弟愚钝,是不是还有别的什么方法,忘前辈赐教
      

  2.   

    你手动的循环 绑定  把每个节点add进去
    外面循环 add 主表
    里面循环 add 从表至于你右边的textbox 显示
    树的节点 有选择事件 你可以在那里面处理
      

  3.   

    有体现父子关系的字段ssxmid,我就是不知道怎么绑定,网上找的一些代码都试了,都失败了。树就2层就可以了,第一层是ssxm,第二层是txzh.zdmc(这是两个字段结合)
      

  4.   


    string reurl = HttpUtility.UrlEncode(Request.Url.AbsoluteUri);
                    Response.Write("<script lanaguage=javascript>alert('登陆后才能执行该操作!');top.location.href=\"/Login.aspx?reurl=" + reurl + "\"</script>");
                    Response.End();
      

  5.   

    刚才发错了
    <frameset border="0" frameborder=no framespacing=0 rows="87,*,48">
          <noframes>请使用提供FRAMES功能的浏览器! !</noframes>
          <frame id="frameheader" src="webpart/header.aspx" name="top" scrolling="no">
            <frameset border=0 frameborder=no framespacing=0 cols="180,*">
                <frame src="webpart/left.htm" scrolling="yes" noresize="noresize"/>
                <frame src="main.aspx" name="main" scrolling="auto" class="main_iframe"/>
            </frameset>
          <frame src="webpart/foot.aspx" name="foot" scrolling="no" noresize="noresize"/>
       </frameset>
      

  6.   

    HTML框架是肯定需要的
    ssxm,zdxx 两个表肯定有关系
    第一层节点绑定主表信息  下一层节点绑定的信息室根据第一层的信息的idtreeview 有个什么nav....属性 就是超链接的 设置其超链接属性后面+上当前项的id 好在另一个页面获取
    还需要设置 treeview的target 指定的是显示的位置 显示在你需要显示的地方,应该是右边
      

  7.   

    直接在数据库中查询出来,然后输出到页面,就可以啊--测试数据
    DECLARE @t TABLE(ID char(3),PID char(3),Name nvarchar(10))
    INSERT @t SELECT '001',NULL ,'山东省'
    UNION ALL SELECT '002','001','烟台市'
    UNION ALL SELECT '004','002','招远市'
    UNION ALL SELECT '003','001','青岛市'
    UNION ALL SELECT '005',NULL ,'四会市'
    UNION ALL SELECT '006','005','清远市'
    UNION ALL SELECT '007','006','小分市'--深度排序显示处理
    --生成每个节点的编码累计(相同当单编号法的编码)
    DECLARE @t_Level TABLE(ID char(3),Level int,Sort varchar(8000))
    DECLARE @Level int
    SET @Level=0
    INSERT @t_Level SELECT ID,@Level,ID
    FROM @t
    WHERE PID IS NULL
    WHILE @@ROWCOUNT>0
    BEGIN
        SET @Level=@Level+1
        INSERT @t_Level SELECT a.ID,@Level,b.Sort+a.ID
        FROM @t a,@t_Level b
        WHERE a.PID=b.ID
            AND b.Level=@Level-1
    END--显示结果
    SELECT SPACE(b.Level*2)+'|--'+a.Name
    FROM @t a,@t_Level b
    WHERE a.ID=b.ID
    ORDER BY b.Sort
    /*--结果
    |--山东省
      |--烟台市
        |--招远市
      |--青岛市
    |--四会市
      |--清远市
        |--小分市
    --*/
      

  8.   

    你手动的循环 绑定 
    用低归的方法 把每个节点add进去 
    外面循环 add 主表 
    里面循环 add 从表 
    树的节点 有选择事件 你可以在那里面处理