急急急,各位哥哥姐姐帮帮忙吧
我做的项目是每个用户都有一个ROLEID,通过不同用户登录时候的Session["ROLEID"]来判断用户角色,不同的用户角色TreeView显示的节点是相同的,但是有些是不可用的,,我刚刚学习编程,这个问题我自己解决不了了,帮帮忙吧,,谢过了,treeview下的节点有:
用户管理
用户注册
用户维护
数据维护
表1数据维护
表2数据维护
数据审核
表1数据审核
表2数据审核
数据查询
表1数据查询
表2数据查询
如果Session["ROLEID"]=“信息管理员”的话,,所有结点都可用
果Session["ROLEID"]=“审核员”的话,,只有数据审核
表1数据审核
表2数据审核
数据查询
表1数据查询
表2数据查询
可用,,但是所有结点还都显示 --------------------编程问答-------------------- 通过代码,先判断权限,然后设置treeview的子节点
这个很简单了 --------------------编程问答-------------------- 我的QQ:641841633,能详细的问你一下吗,,我很菜 --------------------编程问答-------------------- 你的treeview的所有子项都是手动写死在里面的还是说动态加载的?
--------------------编程问答-------------------- 这个很好做!在C#代码里就可以判断了! --------------------编程问答-------------------- 可是我不会,我能QQ咨询你一次吗 --------------------编程问答--------------------
我的是手动写死的 --------------------编程问答--------------------
我的是手动写死的 --------------------编程问答-------------------- 可以初始化的时候,都不可用。然后判断权限,有权限的节点就开启 --------------------编程问答--------------------
给你个笨办法
假定页面是这么写的
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="test.aspx.cs" Inherits="Maticsoft.Web.test" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:TreeView ID="TreeView1" runat="server">
<Nodes>
<asp:TreeNode Text="用户管理" Value="用户管理">
<asp:TreeNode Text="用户注册" Value="用户注册"></asp:TreeNode>
<asp:TreeNode Text="用户维护" Value="用户维护"></asp:TreeNode>
</asp:TreeNode>
<asp:TreeNode Text="数据维护" Value="数据维护">
<asp:TreeNode Text="表1数据维护" Value="表1数据维护"></asp:TreeNode>
<asp:TreeNode Text="表2数据维护" Value="表2数据维护"></asp:TreeNode>
</asp:TreeNode>
<asp:TreeNode Text="数据审核" Value="数据审核">
<asp:TreeNode Text="表1数据审核" Value="表1数据审核"></asp:TreeNode>
<asp:TreeNode Text="表2数据审核" Value="表2数据审核"></asp:TreeNode>
</asp:TreeNode>
</Nodes>
</asp:TreeView>
</div>
</form>
</body>
</html>
那么后台就可以这么处理
--------------------编程问答-------------------- 自测过的 --------------------编程问答-------------------- 谢谢你,,但是还是不是灰显,,我们领导的意思是所有的节点都显示,,但是是设置灰显 --------------------编程问答-------------------- =。=
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace Maticsoft.Web
{
public partial class test : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Session["ROLEID"] = "审核员";
if ("审核员".Equals(Session["ROLEID"].ToString()))
{
List<TreeNode> list = new List<TreeNode>();
foreach (TreeNode item in this.TreeView1.Nodes)
{
if (!"数据审核".Equals(item.Value))
{
list.Add(item);
}
}
for (int i = 0; i < list.Count; i++)
{
TreeView1.Nodes.Remove(list[i]);
}
}
}
}
}
}
你丫就没说明白,我去
就是不让点但是能看见是吗? --------------------编程问答-------------------- 这个treeview还真没这个本事,除非你用JS动态控制,不过很麻烦哦。。。灰常麻烦,JS我也不太会玩 --------------------编程问答-------------------- 哦。。对不起,,我刚刚接触软件 --------------------编程问答--------------------
你跟你们领导沟通下,你就这么跟他说,你说领导,你想想,如果说他没有这个权限你为什么还让他看见这个权限,看见了又不让点,你说这合理吗这个,然后你就接着忽悠说,从使用角度来讲,没有这个权限,还是不要显示的好! --------------------编程问答-------------------- 对呀,不给用还显示出来干嘛呢 --------------------编程问答-------------------- 使用递归,在递归函数中,根据权限设置节点状态 --------------------编程问答--------------------
能详细的说说怎么实现吗
补充:.NET技术 , ASP.NET