private bool FindCollectionInTarget(
            ISelectableNode <TKey, TEntity> childNode,
            out ObservableCollection <ISelectableNode <TKey, TEntity> >?result)
        {
            result = null;

            if (childNode.ParentNode == null)
            {
                result = _obsColl;
            }
            else
            {
                if (!_allNodes.ContainsKey(childNode.ParentNode.Key))
                {
                    _logger?.Error <TKey, string>("Could not find containing node with key '{0}' in {1}",
                                                  childNode.ParentNode.Key,
                                                  _collName);
                }
                else
                {
                    result = _allNodes[childNode.ParentNode.Key].ChildNodes;
                }
            }

            return(result != null);
        }
Esempio n. 2
0
 //Remove node from selection
 public void RemoveNode(ISelectableNode nodeControl)
 {
     if (HasNode(nodeControl))
     {
         NodeControls.Remove(nodeControl);
         nodeControl.DeSelect();
     }
 }
Esempio n. 3
0
 //Add node to selection
 public void AddNode(ISelectableNode nodeControl, bool isShowDetails = true)
 {
     if (!HasNode(nodeControl))
     {
         NodeControls.Add(nodeControl);
         nodeControl.Select(isShowDetails);
     }
 }
        private bool RemoveAt(
            ObservableCollection <ISelectableNode <TKey, TEntity> > container,
            ISelectableNode <TKey, TEntity> nodetoRemove)
        {
            var itemIndex = container.ToList()
                            .FindIndex(x => EqualityComparer <TKey> .Default.Equals(x.Key, nodetoRemove.Key));

            if (itemIndex < 0)
            {
                _logger?.Error <TKey, string>("Could not find node with key '{0}' in the root of {1}", nodetoRemove.Key, _collName);

                return(false);
            }

            container.RemoveAt(itemIndex);

            return(true);
        }
Esempio n. 5
0
 //Check if node has been selected
 public bool HasNode(ISelectableNode nodeControl)
 {
     return NodeControls.Contains(nodeControl);
 }
Esempio n. 6
0
 //Remove node from selection
 public void RemoveNode(ISelectableNode nodeControl)
 {
     if (HasNode(nodeControl))
     {
         NodeControls.Remove(nodeControl);
         nodeControl.DeSelect();
     }
 }
Esempio n. 7
0
 //Add node to selection
 public void AddNode(ISelectableNode nodeControl, bool isShowDetails = true)
 {
     if (!HasNode(nodeControl))
     {
         NodeControls.Add(nodeControl);
         nodeControl.Select(isShowDetails);
     }
 }
Esempio n. 8
0
 public abstract SelectableNode <TEntity, TKey> Create(TEntity entity, ISelectableNode <TEntity, TKey>?parentNode);
Esempio n. 9
0
 //Check if node has been selected
 public bool HasNode(ISelectableNode nodeControl)
 {
     return(NodeControls.Contains(nodeControl));
 }