예제 #1
0
 /// <summary>
 ///		Expande un nodo
 /// </summary>
 private void ExpandNodes(TreeViewItemsViewModelCollection nodes, List <Tuple <string, string> > nodesExpanded)
 {
     if (nodes != null)
     {
         foreach (ITreeViewItemViewModel node in nodes)
         {
             if (Checkexpanded(node, nodesExpanded))
             {
                 // Expande el nodo
                 node.IsExpanded = true;
                 // Expande los hijos
                 ExpandNodes(node.Children, nodesExpanded);
             }
         }
     }
 }
예제 #2
0
        /// <summary>
        ///		Obtiene recursivamente los elementos seleccionados
        /// </summary>
        private List <Tuple <string, string> > GetNodesExpanded(TreeViewItemsViewModelCollection nodes)
        {
            List <Tuple <string, string> > expanded = new List <Tuple <string, string> >();

            // Recorre los nodos obteniendo los seleccionados
            foreach (TreeViewItemViewModel node in nodes)
            {
                // Añade el nodo si se ha expandido
                if (node.IsExpanded)
                {
                    expanded.Add(new Tuple <string, string>(node.GetType().ToString(), node.NodeID));
                }
                // Añade los nodos hijo
                if (node.Children != null && node.Children.Count > 0)
                {
                    expanded.AddRange(GetNodesExpanded(node.Children));
                }
            }
            // Devuelve la colección de nodos
            return(expanded);
        }