您的位置:首页 > 其它

从XML文件读取数据动态设置Tree控件使用

2007-03-29 09:19 561 查看
效果如图:
<?xml version="1.0" encoding="utf-8"?>
2<tree>
3 <Type name="申请区域">
4 <Node>
5 <Name>请假申请</Name>
6 <Jdt>申请请假</Jdt>
7 <URL>~/Vacation/Vacation.aspx</URL>
8 </Node>
9 <Node>
10 <Name>忘刷申请</Name>
11 <Jdt>申请忘刷</Jdt>
12 <URL>~/Card/ForgetCard.aspx</URL>
13 </Node>
14 <Node>
15 <Name>加班申请</Name>
16 <Jdt>申请加班</Jdt>
17 <URL>~/WorkMore/WorkMore.aspx</URL>
18 </Node>
19 <Node>
20 <Name>公差申请</Name>
21 <Jdt>申请出差</Jdt>
22 <URL>~/BusinessTrip/BusinessTrip.aspx</URL>
23 </Node>
24 <Node>
25 <Name>名片申请</Name>
26 <Jdt>申请名片</Jdt>
27 <URL>~/BussinessCard/BussinessCard.aspx</URL>
28 </Node>
29 <Node>
30 <Name>费用报销申请</Name>
31 <Jdt>费用报销申请</Jdt>
32 <URL>~/Expense/Expense.aspx</URL>
33 </Node>
34 </Type>
35 <Type name="主管专区">
36 <Node>
37 <Name>待审核的明细</Name>
38 <Jdt>审核</Jdt>
39 <URL>~/Verify.aspx</URL>
40 </Node>
41 <Node>
42 <Name>审核费用报销</Name>
43 <Jdt>审核</Jdt>
44 <URL>~/Expense/VerifyExpense.aspx</URL>
45 </Node>
46 <Node>
47 <Name>已审核的请假</Name>
48 <Jdt>审核请假</Jdt>
49 <URL>~/Vacation/lookVacation.aspx</URL>
50 </Node>
51 <Node>
52 <Name>已审核的忘刷</Name>
53 <Jdt>审核忘刷</Jdt>
54 <URL>~/Card/LookVerifyed.aspx</URL>
55 </Node>
56 <Node>
57 <Name>已审核的加班</Name>
58 <Jdt>审核加班</Jdt>
59 <URL>~/WorkMore/WorkMoreVerifyed.aspx</URL>
60 </Node>
61 <Node>
62 <Name>已审核的出差</Name>
63 <Jdt>审核出差</Jdt>
64 <URL>~/BusinessTrip/VerifyedTrip.aspx</URL>
65 </Node>
66 <Node>
67 <Name>已审核的名片</Name>
68 <Jdt>审核名片</Jdt>
69 <URL>~/BussinessCard/LookVerifyedCard.aspx</URL>
70 </Node>
71 <Node>
72 <Name>已审核的费用报销</Name>
73 <Jdt>审核报销</Jdt>
74 <URL>~/Expense/VerifyedExpense.aspx</URL>
75 </Node>
76 </Type>
77 <Type name="个人资料">
78 <Node>
79 <Name>个人基本资料</Name>
80 <Jdt>申请</Jdt>
81 <URL>~/WorkerInfo/WorkerInfo.aspx</URL>
82 </Node>
83 <Node>
84 <Name>修改帐号</Name>
85 <Jdt>申请</Jdt>
86 <URL>~/WorkerInfo/SetPwd.aspx</URL>
87 </Node>
88 </Type>
89 <Type name="管理员专区">
90 <Node>
91 <Name>员工信息管理</Name>
92 <Jdt>admin</Jdt>
93 <URL>~/Admin/ManageWokerInto.aspx</URL>
94 </Node>
95 <Node>
96 <Name>添加员工</Name>
97 <Jdt>admin</Jdt>
98 <URL>~/Admin/AddWorker.aspx</URL>
99 </Node>
100 <Node>
101 <Name>用户管理</Name>
102 <Jdt>admin</Jdt>
103 <URL>~/Admin/User.aspx</URL>
104 </Node>
105 <Node>
106 <Name>设置角色</Name>
107 <Jdt>admin</Jdt>
108 <URL>~/Admin/CreateRoles.aspx</URL>
109 </Node>
110 </Type>
111</tree>
根据权限设置tree节点

1 Private Sub BindTree()Sub BindTree()
2
3 Dim strJD As String
4 Dim DBRoleObj As New DBRole
5 Dim TypeValue As String
6 Dim JdtName As String = Nothing
7 Dim XDoc As New XmlDocument
8 Dim AppTionPath As String = HttpContext.Current.Server.MapPath(HttpContext.Current.Request.ApplicationPath)
9 Dim Path As String = AppTionPath & "\App_Data\tree.xml"
10 Try
11
12
13 XDoc.Load(Path)
14
15 tree.Nodes.Clear()
16 If Role <> "Administrator" Then
17 strJD = DBRoleObj.GetJd(Role)
18
19 For Each node As XmlNode In XDoc.GetElementsByTagName("Type")
20 TypeValue = node.Attributes("name").Value
21 Dim tNode As TreeNode = New TreeNode(TypeValue)
22 tNode.NavigateUrl = "~/index.aspx"
23 tree.Nodes.Add(tNode)
24
25 For Each nodex As XmlNode In node.ChildNodes
26 JdtName = nodex.ChildNodes(1).InnerText
27 If strJD.Contains(JdtName) Then
28 Dim sNode As TreeNode = New TreeNode()
29 sNode.Text = nodex.ChildNodes(0).InnerText
30 sNode.NavigateUrl = nodex.ChildNodes(2).InnerText
31 tNode.ChildNodes.Add(sNode)
32 End If
33
34 Next
35 If tNode.ChildNodes.Count = 0 Then
36 tree.Nodes.Remove(tNode)
37 End If
38 Next
39
40 Else
41
42 For Each node As XmlNode In XDoc.GetElementsByTagName("Type")
43 TypeValue = node.Attributes("name").Value
44 Dim tNode As TreeNode = New TreeNode(TypeValue)
45 tNode.NavigateUrl = "~/index.aspx"
46 tree.Nodes.Add(tNode)
47
48 For Each nodex As XmlNode In node.ChildNodes
49 Dim sNode As TreeNode = New TreeNode()
50 sNode.Text = nodex.ChildNodes(0).InnerText
51 sNode.NavigateUrl = nodex.ChildNodes(2).InnerText
52 tNode.ChildNodes.Add(sNode)
53 Next
54 Next
55 End If
56
57 Catch ex As Exception
58
59 End Try
60
61 End Sub
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐