interesting problem moving shape between list containers on page

Started by amval17, January 14, 2016, 09:39:18 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

amval17

I'm using C# and Visio 2010.  When moving a shape from one list container to another on the same page, I have (in the past) successfully used the technique of just removing the shape from one container and adding to the other like so:

                fromContainer.ContainerProperties.RemoveMember(shapeToMove);
                toContainer.ContainerProperties.AddMember(shapeToMove, IVisio.VisMemberAddOptions.visMemberAddUseResizeSetting);
                toContainer.ContainerProperties.InsertListMember(shapeToMove, positionInContainer); // position will always be 1 in this case

Now I am running into some strange behavior where it's not quite working.  Wondering if anyone knows what this might mean.

I'll need to provide a little context in order to explain this.  The basic idea is that we are working with paragraph shapes inside of column shapes, and trying to handle wrapping if things start going off the page.  So if a paragraph gets inserted into a column shape which then makes the column too long for the page, we want to move the bottom paragraph to the top of the next column.

What I'm seeing is that if I drag the new paragraph to the bottom of the column, thereby making it too long, it works perfectly – moves to the top of the next column immediately.

However, if I drag the new paragraph to any other position of the column, here's what I see (see screenshot):  The bottom shape from first column didn't move, but it has clearly been successfully removed from its original container.  (The container has shrunk to no longer contain it). If I click on the paragraph shape, it does have an anchor point over to position 1 of the next column, and the column 2 container highlights, so it is in that container, and it has allocated the correct amount of space at that position to accommodate the paragraph shape, but it just didn't actually pull it over.  If I click on that shape and move it the tiniest bit, on release Visio then pulls it over where it's supposed to be.  Or if I delete some other paragraph from column 2 is also triggers that paragraph to get pulled over.

Any ideas???

Croc

It seems to me, here acting the same limit on the length of the chain, as in the garland shapes. That is Visio limits the depth calculation.

amval17

It feels like some event in Visio isn't firing...   but I'm not sure why that would be.  As soon as I manually tweak that column a bit, it triggers the refresh.  Was looking for some way to maybe force a refresh on that Container, but didn't find anything.

Anyway, I was able to work around the issue by doing a Copy/Paste of the shape and moving the copy into the second container.

But I would still be very interested in understanding what was going on and knowing how to fix the issue.

Thanks in advance.

Browser ID: smf (is_webkit)
Templates: 4: index (default), Display (default), GenericControls (default), GenericControls (default).
Sub templates: 6: init, html_above, body_above, main, body_below, html_below.
Language files: 4: index+Modifications.english (default), Post.english (default), Editor.english (default), Drafts.english (default).
Style sheets: 4: index.css, attachments.css, jquery.sceditor.css, responsive.css.
Hooks called: 168 (show)
Files included: 34 - 1321KB. (show)
Memory used: 1081KB.
Tokens: post-login.
Cache hits: 11: 0.00225s for 26,573 bytes (show)
Cache misses: 1: (show)
Queries used: 14.

[Show Queries]