protected void ImageButtonGiant_Click(object sender, ImageClickEventArgs e) { //定义一个哈希表ht Hashtable ht = new Hashtable(); string where = ""; //应用foreach循环GridView控件中的CheckBox控件 foreach (GridViewRow row in GV.Rows) { //先清空下哈希表中的数据 ht.Clear(); //应用FindControl方法查找GridView控件中CheckBox控件,并判断是否选中了种用户权限 ht.Add("HasDuty_DepartmentManage", ((CheckBox)row.FindControl("chkDepartmentManage")).Checked == true ? 1 : 0); ht.Add("HasDuty_UserManage", ((CheckBox)row.FindControl("chkUserManage")).Checked == true ? 1 : 0); ht.Add("HasDuty_RoleManage", ((CheckBox)row.FindControl("chkUserManage")).Checked == true ? 1 : 0); ht.Add("HasDuty_Role", ((CheckBox)row.FindControl("chkUserManage")).Checked == true ? 1 : 0); ht.Add("HasDuty_CourseManage", ((CheckBox)row.FindControl("chkCourseManage")).Checked == true ? 1 : 0); ht.Add("HasDuty_PaperSetup", ((CheckBox)row.FindControl("chkPaperSetup")).Checked == true ? 1 : 0); ht.Add("HasDuty_PaperLists", ((CheckBox)row.FindControl("chkPaperSetup")).Checked == true ? 1 : 0); ht.Add("HasDuty_UserPaperList", ((CheckBox)row.FindControl("chkUserPaperList")).Checked == true ? 1 : 0); ht.Add("HasDuty_UserScore", ((CheckBox)row.FindControl("chkUserPaperList")).Checked == true ? 1 : 0); ht.Add("HasDuty_SingleSelectManage", ((CheckBox)row.FindControl("chkTypeManage")).Checked == true ? 1 : 0); ht.Add("HasDuty_MultiSelectManage", ((CheckBox)row.FindControl("chkTypeManage")).Checked == true ? 1 : 0); ht.Add("HasDuty_FillBlankManage", ((CheckBox)row.FindControl("chkTypeManage")).Checked == true ? 1 : 0); ht.Add("HasDuty_JudgeManage", ((CheckBox)row.FindControl("chkTypeManage")).Checked == true ? 1 : 0); ht.Add("HasDuty_QuestionManage", ((CheckBox)row.FindControl("chkTypeManage")).Checked == true ? 1 : 0); //定义一个查询的条件语句 where = " Where RoleId=" + row.Cells[0].Text; //调用Rolemr公共类中的Update方法修改角色权限信息 Rolemr.Update(ht, where); } }
//自定义方法InitData()进行权限设置 private void InitData() { //创建一个DataTable类型的变量存储哈希表中数据 DataTable dt = Rolemr.Query(new Hashtable()); //将创建的dt作为数据源 GV.DataSource = dt; //从数据库中绑定GridView控件中数据 GV.DataBind(); //循环GridView控件中的CheckBox控件 for (int i = 0; i < dt.Rows.Count; i++) { //部门管理 if (OnLineExam.HelperClass.GetSafeData.ValidateDataRow_N(dt.Rows[i], "HasDuty_DepartmentManage") == 1) { ((CheckBox)GV.Rows[i].FindControl("chkDepartmentManage")).Checked = true; } //用户管理 if (OnLineExam.HelperClass.GetSafeData.ValidateDataRow_N(dt.Rows[i], "HasDuty_UserManage") == 1) { ((CheckBox)GV.Rows[i].FindControl("chkUserManage")).Checked = true; } //考试科目管理 if (OnLineExam.HelperClass.GetSafeData.ValidateDataRow_N(dt.Rows[i], "HasDuty_CourseManage") == 1) { ((CheckBox)GV.Rows[i].FindControl("chkCourseManage")).Checked = true; } //试卷制定维护 if (OnLineExam.HelperClass.GetSafeData.ValidateDataRow_N(dt.Rows[i], "HasDuty_PaperSetup") == 1) { ((CheckBox)GV.Rows[i].FindControl("chkPaperSetup")).Checked = true; } //用户试卷管理 if (OnLineExam.HelperClass.GetSafeData.ValidateDataRow_N(dt.Rows[i], "HasDuty_UserPaperList") == 1) { ((CheckBox)GV.Rows[i].FindControl("chkUserPaperList")).Checked = true; } //试题类别管理 if (OnLineExam.HelperClass.GetSafeData.ValidateDataRow_N(dt.Rows[i], "HasDuty_SingleSelectManage") == 1) { ((CheckBox)GV.Rows[i].FindControl("chkTypeManage")).Checked = true; } } }