private void tvACCIONES_AfterCheck(object sender, TreeViewEventArgs e) { if (chekearN == false) { return; } TreeNode seleccion = e.Node; if (seleccion.Nodes.Count > 0) { checkChildNodes(seleccion, seleccion.Checked); } else { if (seleccion.Tag != null) { MODELO.ACCION oACCION = (MODELO.ACCION)seleccion.Tag; if (seleccion.Checked) { oGRUPO.ACCION.Add(oACCION); } else { oGRUPO.ACCION.Remove(oACCION); } } } chekearN = false; if (seleccion.Parent != null) { HasCheckedChildNodes(seleccion.Parent); } chekearN = true; }
private void checkChildNodes(TreeNode node, bool nodeChecked) { chekearN = false; foreach (TreeNode tnS in node.Nodes) { if (tnS.Nodes.Count > 0) { tnS.Checked = nodeChecked; checkChildNodes(tnS, nodeChecked); } else { if (tnS.Checked != node.Checked) { tnS.Checked = node.Checked; if (tnS.Tag != null) { MODELO.ACCION oACCION = (MODELO.ACCION)tnS.Tag; if (tnS.Checked) { oGRUPO.ACCION.Add(oACCION); } else { oGRUPO.ACCION.Remove(oACCION); } } } } } chekearN = true; }
public void ACTUALIZA_ACCIONES(MODELO.accion accion) { if (oCATALOGO.ACCIONES.Count(a => (a.CONTROL == accion.CONTROL) && (a.FORMULARIO.CLASE == accion.FORMULARIO)) == 0) { MODELO.FORMULARIO oFORMULARIO = oCATALOGO.FORMULARIOS.FirstOrDefault(form => form.CLASE == accion.FORMULARIO); MODELO.ACCION oACCION = new MODELO.ACCION(); oACCION.DESCRIPCION = accion.DESCRIPCION; oACCION.CONTROL = accion.CONTROL; oFORMULARIO.ACCION.Add(oACCION); oCATALOGO.SaveChanges(); } }
public Boolean VALIDAR_ACCION(string formulario, string control) { bool RESULTADO = false; if (this.GRUPO.Count(g => g.DESCRIPCION == "SUPERUSUARIOS") > 0) { RESULTADO = true; } else { MODELO.ACCION oACCION = CATALOGO.obtener_instancia().ACCIONES.FirstOrDefault(a => (a.CONTROL == control) && (a.FORMULARIO.CLASE == formulario)); if (oACCION != null) { foreach (MODELO.GRUPO oGRUPO in this.GRUPO) { if (oGRUPO.ACCION.Count(acc => acc.CODIGO == oACCION.CODIGO) > 0) { RESULTADO = true; } } } } return(RESULTADO); }