/// <summary> /// Добавляет свойство в список. /// </summary> /// <exception cref="ArgumentNullException"></exception> public void Add(PropertyDefinition property) { if (property == null) { throw new ArgumentNullException("property"); } if (!_properties.ContainsKey(property)) { var node = new TreeListNode(property); if (property.Editor != null) { property.Editor.Properties = new PropertyCollection(_register, node.Nodes); } _register.Register(property); if (property.Visibility == Visibility.Visible) { _parentNodes.Add(node); } _properties.Add(property, node); OnCollectionChanged(new NotifyCollectionChangedEventArgs(NotifyCollectionChangedAction.Add, property)); } }
private static void AddChildren(TreeListNodeCollection dest, IEnumerable<TreeItemDto> children) { foreach (var t in children) { if (t.IsContainsIn(dest)) continue; var node = NodeFromItem(t); dest.Add(node); } }