public void AddNode(NodeBaseViewModel node, Point location) { if (node == null) { return; } if (node.ParentDiagram != null) { throw new InvalidOperationException("Node is already added to diagram"); } node.ParentDiagram = this; node.Location = location; Nodes.Add(node); ForceRedraw(); node.RaiseInitialize(); }