private void AsignarPermisos(bool todos) { if (Datos.Current == null) { return; } Datos_Permisos.DataSource = ((User)Datos.Current).Licences; foreach (Privilege permiso in Datos_Permisos) { permiso.Create = todos; permiso.Modify = todos; permiso.Remove = todos; permiso.Read = todos; } Privileges_DGW.Refresh(); }
private void Privileges_DGW_CellClick(object sender, DataGridViewCellEventArgs e) { if (Privileges_DGW.CurrentRow == null) { return; } if (e.ColumnIndex == -1) { return; } EPrivilege permiso = EPrivilege.Read; switch (Privileges_DGW.Columns[e.ColumnIndex].Name) { case "Read": permiso = EPrivilege.Read; break; case "Create": permiso = EPrivilege.Create; break; case "Modify": permiso = EPrivilege.Modify; break; case "Remove": permiso = EPrivilege.Delete; break; } DataGridViewRow row = Privileges_DGW.CurrentRow; Privilege item = row.DataBoundItem as Privilege; if (row.Cells[e.ColumnIndex].Value.ToString() == moleQule.Library.Resources.Labels.UNSET_PRIVILEGES) { SetPrivilegesAction(item, permiso); switch (Privileges_DGW.Columns[e.ColumnIndex].DataPropertyName) { case "CanRead": item.Read = true; break; case "CanCreate": item.Create = true; break; case "CanModify": item.Modify = true; break; case "CanDelete": item.Remove = true; break; } } else { if (CheckAssociatedPrivilegesAction(item, permiso)) { switch (Privileges_DGW.Columns[e.ColumnIndex].DataPropertyName) { case "CanRead": item.Read = false; break; case "CanCreate": item.Create = false; break; case "CanModify": item.Modify = false; break; case "CanDelete": item.Remove = false; break; } } } //SetUnlinkedGridValues(Permisos_Grid.Name); //ReadUserGrants(); Privileges_DGW.Refresh(); }