public NodeViewModel(IISOViewModel vm, TreeViewModel owner) { _vm = vm; _owner = owner; if(_vm != null && _vm.Properties != null) foreach (var property in _vm.Properties) { _propertyVMs.Add(_owner.addOrRetrieveISOVM(property)); } _childNodes = new List<NodeViewModel>(); var firstChilld = _vm.Children.FirstOrDefault(); if (firstChilld != null) { var childVM = _owner.addOrRetrieveISOVM(firstChilld); var node = _owner.addOrRetrieveNode(childVM); _childNodes.Add(node); } }
public NodeViewModel(IISOViewModel vm, TreeViewModel owner) { _vm = vm; _owner = owner; if (_vm != null && _vm.Properties != null) { foreach (var property in _vm.Properties) { _propertyVMs.Add(_owner.addOrRetrieveISOVM(property)); } } _childNodes = new List <NodeViewModel>(); var firstChilld = _vm.Children.FirstOrDefault(); if (firstChilld != null) { var childVM = _owner.addOrRetrieveISOVM(firstChilld); var node = _owner.addOrRetrieveNode(childVM); _childNodes.Add(node); } }
protected void performExpansion() { bool childrenChanged = false; if (BelowOrIsGenerator() && !_owner.TruncateDataItems) { foreach (var iso in _vm.Children) { var childVM = _owner.addOrRetrieveISOVM(iso); var childNode = _owner.addOrRetrieveNode(childVM); if (!_childNodes.Contains(childNode)) { childrenChanged = true; _childNodes.Add(childNode); } } } if (childrenChanged) { notifyChildrenChanged(); } }