public TestNodesViewModel(TestNodeService testNodeService) { mTestNodeService = testNodeService; bool DefaultPredicate(Node <TestNodeDto, int> node) => node.IsRoot; //transform the data to a full nested tree //then transform into a fully recursive view model mCleanUp = testNodeService.TestNodes.Connect() .TransformToTree(testNode => testNode.ParentId, Observable.Return((Func <Node <TestNodeDto, int>, bool>)DefaultPredicate)) .Transform(node => new TestNodeViewModel(node, Move, Remove)) .Bind(out mTestNodeViewModels) .DisposeMany() .Subscribe(); }
public MainWindowViewModel() { TestNodes = new TestNodesViewModel(TestNodeService.CreateWithRandomContent()); }