private void BindGrid(int currentPage) { SisPackController.AdministrarGrillas.Configurar(grdPerfiles, "PerfilID", this.CantidadOpciones); if (Session["grdPerfilesSession"] == null) { IPerfil perfil = PerfilFactory.GetPerfil(); //perfil.Nombre = this.txtPerfil.Text; //perfil.CategoriaPerfilID = Utiles.Validaciones.obtieneEntero(this.cmbCategoria.SelectedValue); this.dsPerfiles = perfil.GetPerfilesUsuario(Utiles.Validaciones.obtieneEntero(this.txtUsuarioID.Text)); } else { this.dsPerfiles = (DsPerfil)Session["grdPerfilesSession"]; foreach (DataGridItem item in grdPerfiles.Items) { DsPerfil.DatosRow dr = (DsPerfil.DatosRow) this.dsPerfiles.Datos.Rows[item.DataSetIndex]; CheckBox chk = (CheckBox)item.FindControl("perfilAsignado"); dr.Asignado = chk.Checked; } } // actualizo la grilla Session["grdPerfilesSession"] = this.dsPerfiles; grdPerfiles.DataSource = this.dsPerfiles; grdPerfiles.CurrentPageIndex = currentPage; grdPerfiles.DataBind(); }