下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 winform权限管理实现【转】 Posted on 2010-04-29 17:05 Happy Coding 阅读(876) 评论(1) 编辑 收藏 winform权限管理实现 效果图: 技术实现: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; namespace HHLInfoManage public p
2、artial class frmQuanXGL : Form public frmQuanXGL() InitializeComponent(); /设置权限树展开 this.QuanXtreeView.ExpandAll(); /绑定角色 Common.AccessDataOperation Data = new HHLInfoManage.Common.AccessDataOperation(); DataTable table = Data.GetDataTable(select distinct Role from QuanX); this.RoletreeView.Nodes0.No
3、des.Clear(); for (int n = 0; n table.Rows.Count; n+) this.RoletreeView.Nodes0.Nodes.Add(table.Rowsn0.ToString(); this.RoletreeView.ExpandAll(); private void ExitbuttonX_Click(object sender, EventArgs e) /关闭窗体 this.Close(); private void 删除ToolStripMenuItem_Click(object sender, EventArgs e) /删除角色 if (
4、this.RoletreeView.SelectedNode != null & this.RoletreeView.SelectedNode.Text!=所有角色) if (MessageBox.Show(你确实要删除该角色吗?, 提示, MessageBoxButtons.YesNo) = DialogResult.Yes) Common.AccessDataOperation Data = new HHLInfoManage.Common.AccessDataOperation(); /删除角色 string comText = delete from QuanX where Role=
5、+this.RoletreeView.SelectedNode.Text+; Data.ExecSql(comText); MessageBox.Show(删除成功!,提示); /重新绑定角色 DataTable table = Data.GetDataTable(select distinct Role from QuanX); this.RoletreeView.Nodes0.Nodes.Clear(); for (int n = 0; n table.Rows.Count; n+) this.RoletreeView.Nodes0.Nodes.Add(table.Ro wsn0.ToSt
6、ring(); this.RoletreeView.ExpandAll(); else MessageBox.Show(请选择角色!, 提示, MessageBoxButtons.OK, MessageBoxIcon.Information); void AllTreeView(TreeNodeCollection node, bool check) /*递归,为选中的父节点选中子节点*/ foreach (System.Windows.Forms.TreeNode node1 in node) if (node1.Nodes.Count != 0) node1.Checked = check
7、; this.AllTreeView(node1.Nodes, node1.Checked); else node1.Checked = check; private void QuanXtreeView_BeforeCheck(object sender, TreeViewCancelEventArgs e) /*为选中的父节点选中子节点*/ this.AllTreeView(e.Node.Nodes, !(e.Node.Checked); private void SavebuttonX_Click(object sender, EventArgs e) /保存数据 if (this.Ad
8、dRoletextBoxX.Text.Trim().Length = 0) MessageBox.Show(角色名称不能为空!,提示); return; string Role=this.AddRoletextBoxX.Text.Trim(); /验证权限 List List=new List(); foreach (TreeNode Node1 in this.QuanXtreeView.Nodes0.Nodes) if (Node1.Checked) List.Add(Node1.Tag.ToString(); foreach (TreeNode Node2 in Node1.Nodes)
9、 if (Node2.Checked) List.Add(Node2.Tag.ToString(); if (List.Count = 0) MessageBox.Show(请选择权限!, 提示); return; Common.AccessDataOperation DataOperation = new HHLInfoManage.Common.AccessDataOperation(); string comText = ; comText = delete from QuanX where Role=+Role+; DataOperation.ExecSql(comText); for
10、 (int n = 0; n List.Count; n+) comText = insert into QuanX(Role,QuanX) values (+Role+,+Listn+); DataOperation.ExecSql(comText); MessageBox.Show(保存成功!,提示); /重新绑定数据 DataTable table = DataOperation.GetDataTable(select distinct Role from QuanX); this.RoletreeView.Nodes0.Nodes.Clear(); for (int n = 0; n
11、table.Rows.Count; n+) this.RoletreeView.Nodes0.Nodes.Add(table.Rowsn0.ToString(); this.RoletreeView.ExpandAll(); private void RoletreeView_AfterSelect(object sender, TreeViewEventArgs e) /给角色赋权 Common.AccessDataOperation Data=new HHLInfoManage.Common.AccessDataOperation(); DataTable table = Data.Get
12、DataTable(select QuanX from QuanX where Role= + this.RoletreeView.SelectedNode.Text + ); foreach (TreeNode Node1 in this.QuanXtreeView.Nodes0.Nodes) Node1.Checked = false; foreach (TreeNode Node2 in Node1.Nodes) Node2.Checked = false; for (int n = 0; n table.Rows.Count; n+) foreach (TreeNode Node1 i
13、n this.QuanXtreeView.Nodes0.Nodes) if (table.Rowsn0.Equals(Node1.Tag) Node1.Checked = true; foreach (TreeNode Node2 in Node1.Nodes) if (table.Rowsn0.Equals(Node2.Tag) Node2.Checked = true; 调用: /进行权限设置 public void SetQuanX() ToolStripMenuItem items = new ToolStripMenuItem mnuMemberMamang,mnuMemberReg
14、ister,mnuMemberRevise,mnuMemberSelect,mnuMemberReviseNext,mnuMemberLogout,mnuSelectRoster, mnuCourse,mnuCoursePlan,mnuCourseChoice,mnuCourseAdjust,mnuCheckIn, mnuPrint,mnuMemberInfoPrint,mnuCheckInPrint,mnuRosterPrint, mnuUserManage,mnuAddUser,mnuReviseUser,mnuChangeUser,mnuLog,QuanX ; Common.AccessDataOperation Data=new HHLInfoManage.Common.AccessDataOperation(); DataTable table = Data.GetDataTable(select QuanX from QuanX where Role= + frmLogin.str_UserRig
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论