protected void CheckBox1_CheckedChanged(object sender, EventArgs e) { if (RoleID < 1) return; CheckBox cb = sender as CheckBox; if (cb == null) return; GridViewRow row = cb.BindingContainer as GridViewRow; if (row == null) return; Menu entity = Menu.Root.AllChilds[row.DataItemIndex] as Menu; if (entity == null) return; formtitle = entity.Name; // 检查权限 RoleMenu rm = RoleMenu.FindByRoleAndMenu(RoleID, entity.ID); if (cb.Checked) { // 没有权限,增加 if (rm == null) { if (!Acquire(PermissionFlags.Insert)) { WebHelper.Alert("没有添加权限!"); return; } rm = new RoleMenu(); rm.RoleID = RoleID; rm.MenuID = entity.ID; rm.PermissionFlag = PermissionFlags.All; rm.Save(); } } else { // 如果有权限,删除 if (rm != null) { if (!Acquire(PermissionFlags.Delete)) { WebHelper.Alert("没有删除权限!"); return; } rm.Delete(); } } GridView1.DataBind(); }