Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private void treeView1_AfterCheck(object sender, TreeViewEventArgs e)
- {
- //
- // Se remueve el evento para evitar que se ejecute nuevamente por accion de cambio de estado
- // en esta operacion
- //
- treeView1.AfterCheck -= treeView1_AfterCheck;
- // El if de siguiente sirve para cuando uno o mas de los nodos hijos esta seleccionado
- // el nodo padre se seleccione y cuando ninguno de los hijos este seleccionado
- // el nodo padre se deseleccione
- if (e.Node.Parent != null)
- {
- bool result = false;
- foreach (TreeNode node in e.Node.Parent.Nodes)
- {
- if (node.Checked)
- {
- result = true;
- break;
- }
- }
- e.Node.Parent.Checked = result;
- }
- //
- // Se valida si el nodo tiene hijos
- // si los tiene se recorren y asignan el estado del nodo que se esta evaluando
- //=======================================================================================
- if (e.Node.Nodes.Count > 0)
- {
- foreach (TreeNode node in e.Node.Nodes)
- {
- //if (node.ToString() == "Administrador")
- //{
- // //;;;;;;;;;;;;;
- // TreeView nodo_nieto = this.Controls.Find("Gerente", true).FirstOrDefault() as TreeView;
- // e.Node.Nodes.nodo_nieto.Checked = false;
- // btn_M.Image = TUPROGRAMA.Properties.Resources.bloqueado;
- //btn_M.Enabled = false;
- //;;;;;;;;;;;;;
- // node.Checked = e.Node.Checked;
- //}
- //else if (node.ToString() == "Gerente") { node.Checked = e.Node.Checked; }
- //else if (node.ToString() == "Empleado") { node.Checked = e.Node.Checked; }
- node.Checked = e.Node.Checked;
- }
- }
- //======================================================================================
- treeView1.AfterCheck += treeView1_AfterCheck;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement