private TreeBranchViewModel(TreeBranch branch, TreeBranchViewModel parent, iTreeViewModel governor)
            : base(branch, parent, governor)
        {
            _modelBranch = branch;

            Children = new ObservableCollection <TreeItemViewModel>();
            foreach (var child in _modelBranch.Children)
            {
                if (child is TreeBranch)
                {
                    Children.Add(new TreeBranchViewModel(child as TreeBranch, _governor));
                }
                else if (child is TreeLeaf)
                {
                    Children.Add(new TreeLeafViewModel(child as TreeLeaf, _governor));
                }
            }
        }
 private TreeLeafViewModel(TreeLeaf leaf, TreeBranchViewModel parent, iTreeViewModel governor)
     : base(leaf, parent, governor)
 {
     _modelLeaf = leaf;
 }
 protected TreeItemViewModel(TreeItem item, TreeBranchViewModel parent, iTreeViewModel governor)
 {
     Parent     = parent;
     _modelItem = item;
     _governor  = governor;
 }