public IDataTreeNode ReplaceChildNode(IDataTreeNode child, object name, IDataTreeNode oldChild) { if (name == null) { throw new InvalidOperationException("DataTreeNode is not a container and cannot contain children."); } Debug.Assert(name is string); return((IDataTreeNode)Set(new DataTreeNodeSet((string)name, _ => child))); }
/// <summary>Finds the TV item.</summary> /// <param name="source">The source.</param> /// <param name="dtn">The DTN.</param> /// <returns></returns> public static TreeViewItem FindTVItem(this TreeView source, IDataTreeNode dtn) { if (source.HasItems && dtn != null) { TreeViewItem tvi = null; ItemContainerGenerator icg = source.ItemContainerGenerator; foreach (var d in dtn.EnumerateFromTop()) { tvi = icg.ContainerFromItem(d) as TreeViewItem; if (tvi == null) { return(null); } icg = tvi.ItemContainerGenerator; } return(tvi); } else { return(null); } }
public IDataTreeNode RemoveChildNode(IDataTreeNode child) { return(RemoveChild((SimisTreeNode)child)); }
public IDataTreeNode ReplaceChildNode(IDataTreeNode child, object name, IDataTreeNode oldChild) { return(ReplaceChild((SimisTreeNode)child, (SimisTreeNode)oldChild)); }
public IDataTreeNode InsertChildNode(IDataTreeNode child, IDataTreeNode before) { return(InsertChild((SimisTreeNode)child, (SimisTreeNode)before)); }
public IDataTreeNode AppendChildNode(IDataTreeNode child) { return(AppendChild((SimisTreeNode)child)); }
public DataTreePathStep(object name, IDataTreeNode node) { Name = name; Node = node; }
public IDataTreeNode RemoveChildNode(IDataTreeNode child) { throw new NotImplementedException(); }
public IDataTreeNode InsertChildNode(IDataTreeNode child, IDataTreeNode before) { throw new NotImplementedException(); }