一个页面中,左边放了一个repeater,右边放了一个treeview,repeater已经循环取出数据(部门),treeview利用后台代码也从数据库里取出了数据(所有的权限),treeview是checkbox形式,我现在要做出的效果是,点击repeater中的某个部门,可以在treeview这边看到这个部门当中涉及到的权限checkbox都选中,不涉及到的权限checkbox都不选,最后我还要取出checkbox的id,因为我要通过一个按钮改某些部门的某些权限!!!!!!我不知道怎么搞。求解,希望有代码。

解决方案 »

  1.   

    repeater是取出了所有的部门名字,treeview取出的是所有权限的名字,是checkbox形式的,但是我要把这两个连在一起,就是点击部门的某一个名字的时候,属于这个部门下的权限在treeview的checkbox就会选中,不属于这个部门的checkbox就不会选中
      

  2.   

    选择部门后回刷一次,重新绑定树,树的数据源包括下面的字段
    部门ID 权限ID 权限名称 是否具有该权限select B.部门ID,B.权限ID,A.权限名称,case when B.权限ID is null then 0 else 1 end as 是否具有该权限
    from 所有权限表 A
    left join 部门权限表 B On A.权限ID = B.权限ID
    where 部门ID=@部门ID
     
      

  3.   

    思路:点击后 取Repeater中的值 传递到TREEVIEW  遍历顺便 添加ID到LIST<int> ID.
      

  4.   

    这里是:部门表(就是角色表)
    roleid rolename 
    权限表
    permissionid 权限的name 权限的路径 父级id 
    中间连接表
    roleid permissionid
      

  5.   

    在repeater的OnItemCommand事件中处理,把你的部门参数用CommandArgument传过去