///-------------------------------------------------------------------------------- /// <summary>This method is used to copy/paste a new item.</summary> /// /// <param name="copyItem">The item to copy/paste.</param> /// <param name="savePaste">Flag to determine whether to save the results of the paste.</param> ///-------------------------------------------------------------------------------- public ViewViewModel PasteView(ViewViewModel copyItem, bool savePaste = true) { View newItem = new View(); newItem.ReverseInstance = new View(); newItem.TransformDataFromObject(copyItem.View, null, false); newItem.ViewID = Guid.NewGuid(); newItem.IsAutoUpdated = false; newItem.Solution = Solution; newItem.Solution = Solution; ViewViewModel newView = new ViewViewModel(newItem, Solution); newView.ResetModified(true); AddView(newView); // paste children foreach (ViewPropertyViewModel childView in copyItem.ViewProperties) { newView.PasteViewProperty(childView, savePaste); } if (savePaste == true) { Solution.ViewList.Add(newItem); newView.OnUpdated(this, null); Solution.ResetModified(true); } return(newView); }