private void AddBlock(IGraph graph, IToolGraphBlock block) { this.FindVisualParent <FlowchartEditorView>().HideToolbox(); var toolblocks = ViewModel.GraphService.Blocks; var i = toolblocks.IndexOf(block); block.Left = block.TempLocation.X; block.Top = block.TempLocation.Y; graph.AddBlock(block); var newBlock = (IToolGraphBlock)Activator.CreateInstance(block.GetType()); toolblocks.Insert(i, newBlock); toolblocks.Remove(block); }