/// <summary> /// Copy <paramref name="designItems"/> from the designer to clipboard. /// </summary> public void Cut(ICollection <DesignItem> designItems) { Clipboard.Clear(); var cutList = RemoveChildItemsWhenContainerIsInList(designItems); string cutXaml = ""; var changeGroup = _context.OpenGroup("Cut " + cutList.Count + "/" + designItems.Count + " elements", cutList); foreach (var item in cutList) { if (item != null && item != _context.RootItem) { XamlDesignItem xamlItem = item as XamlDesignItem; if (xamlItem != null) { cutXaml += XamlStaticTools.GetXaml(xamlItem.XamlObject); cutXaml += _delimeter; } } } ModelTools.DeleteComponents(cutList); Clipboard.SetText(cutXaml, TextDataFormat.Xaml); changeGroup.Commit(); }
public override DesignItem Clone() { DesignItem item = null; var xaml = XamlStaticTools.GetXaml(this.XamlObject); XamlDesignItem rootItem = Context.RootItem as XamlDesignItem; var obj = XamlParser.ParseSnippet(rootItem.XamlObject, xaml, ((XamlDesignContext)Context).ParserSettings); if (obj != null) { item = ((XamlDesignContext)Context)._componentService.RegisterXamlComponentRecursive(obj); } return(item); }
/// <summary> /// Copy <paramref name="designItems"/> from the designer to clipboard. /// </summary> public void Copy(ICollection<DesignItem> designItems) { Clipboard.Clear(); string copiedXaml = ""; var changeGroup = _context.OpenGroup("Copy " + designItems.Count + " elements", designItems); foreach (var item in designItems) { if (item != null) { XamlDesignItem xamlItem = item as XamlDesignItem; if (xamlItem != null) { copiedXaml += XamlStaticTools.GetXaml(xamlItem.XamlObject); copiedXaml += _delimeter; } } } Clipboard.SetText(copiedXaml, TextDataFormat.Xaml); changeGroup.Commit(); }