Take the following example:
In Demo1 I insert 2 PinNodes and group them. Then I create a link between them. Now I Drag-copy the group, and get a copy without the link.
Any Idea of how I get the links copied when the links is between to nodes inside a group?
You need to make sure the link is a child of the GoGroup. If the link is not selected and is not a child of the selected object(s), then it won’t get copied.
You could try setting GoToolDragging.CopiesEffectiveSelection to true. However, that won’t change the behavior of GoView.EditCopy. You’ll note that in the TreeApp sample, there’s an override of GoView.CopyToClipboard to handle that case in a general fashion.
Also, if you construct the link programmatically, you can of course make sure the link is Add’ed to the group rather than to some layer.
For interactively drawn new links, you’ll need to customize GoToolLinkingNew.DoNewLink and GoToolRelinking.DoRelink to make sure the link is properly parented. This is done automatically for you if the group is actually a GoSubGraph, since those methods call GoSubGraph.ReparentToCommonSubGraph. So I suppose another option for you is to use a GoSubGraph instead of a GoGroup, if you can.
GoSubGraph did the trick and the only coding required was to change from GoGroup to GoSubGraph, so thats great :-)