问题:一个软件我有多个用户,但是我每个用户的权限不一样。比如admin我所有的权限都有,我用admin帐号登录。在admin下面我添加新帐号,我所以的权限都可以选择。如果User只有其中的几个权限,那么我用User登录,在User帐号下面添加用户,赋予用户的权限,只能在User有的权限给予。但是如何判断,在创建的时候判断这个用户的权限,在添加新用户时的权限C#

解决方案 »

  1.   

    看你的设计,只需要把选择用户的权限列读取出来就可以了然后根据权限列得到的字符串分隔,动态创建checkbox放在界面上即可
      

  2.   

      private void buttonAdd_Click(object sender, EventArgs e)
            {
                int index = ControlUserView.GetSelectedRows()[0];
                var userData = ControlUserView.DataSource as List<User>;
                if (userData[index].Privileges == "用户维护")
                {
                    checkbox.用户维护.Checked = false;
                }
                if (userData[index].Privileges == "修改配置")
                {
                    checkbox.修改配置.Checked = false;
                }
                if (userData[index].Privileges == "编辑方案")
                {
                    checkbox.编辑方案.Checked = false;
                }
                if (userData[index].Privileges == "下载方案")
                {
                    checkbox.下载方案.Checked = false;
                }
                if (userData[index].Privileges == "导出数据")
                {
                    checkbox.导出数据.Checked = false;
                }
                using (var dForm = new TestIncrease())
                {             
                     if (dForm.ShowDialog() == DialogResult.OK)
                     {                  
                         userData.Add(new User(dForm.GetModel().ID, dForm.GetModel().Username, dForm.GetModel().Nickname, dForm.GetModel().Password, formatPrivileges(dForm.GetModel().Privileges),
                         dForm.GetModel().CreatedAt));
                         ControlUserView.RefreshData();
                     }              
                }
            }
      

  3.   

    问一下,上面那段代码放在那里,按现在这个位置放,我的buttonAnd这个按钮不触发了。所以各位帮忙看看应该放在那里 谢谢