private OperationNodeViewModel(OperationNode node, OperationNodeViewModel parent)
        {
            this._node = node;
            this._parent = parent;

            this._children = new ReadOnlyCollection<OperationNodeViewModel>(
                    (from child in _node.Children
                     select new OperationNodeViewModel(child, this))
                     .ToList<OperationNodeViewModel>());
        }
Ejemplo n.º 2
0
        public TreeViewModel(OperationNode rootNode)
        {
            if (rootNode == null)
            {
                throw new ArgumentNullException("rootNode");
            }
            this.SelectedNodeDoubleClickedCommand = new RelayCommand<OperationNodeViewModel>(this.Changed);

            this._rootViewModel = new OperationNodeViewModel(rootNode);
            this.FirstGenerationChildren = this._rootViewModel.Children;
        }
 public OperationNodeViewModel(OperationNode person)
     : this(person, null)
 {
 }
Ejemplo n.º 4
0
        private OperationNode CreateParentNode(string parentTitle, OperationType operationType, IList<string> childrenNodes)
        {
            OperationNode parentNode = new OperationNode(parentTitle, OperationType.None);

            if (childrenNodes != null && childrenNodes.Count() > 0)
            {
                foreach (string table in childrenNodes)
                {
                    parentNode.Children.Add(new OperationNode(table, operationType));
                }
            }

            return parentNode;
        }
Ejemplo n.º 5
0
        private void OnSaveCompleted(IDatabaseProvider provider)
        {
            this._provider = provider ;
            this._provider.Init();

            OperationNode tableParentNode = CreateParentNode("Tables", OperationType.Table, this._provider.TableNames);
            OperationNode viewParentNode = CreateParentNode("Views", OperationType.View, this._provider.ViewNames);
            OperationNode procedureParentNode = CreateParentNode("Procedures", OperationType.Procedure, this._provider.ProcedureNames);

            OperationNode node = new OperationNode("ParentNode", OperationType.None);
            node.Children.Add(tableParentNode);
            node.Children.Add(viewParentNode);
            node.Children.Add(procedureParentNode);

            TreeViewModel viewModel = new TreeViewModel(node);
            this.FirstGenerationChildren = viewModel.FirstGenerationChildren; 
        }