Following on from my previous post, I thought I'd move on and look at some interesting aspects of the Congress shapes from a Visio construction perspective.
This post is inspired by the US mid-term elections back in November and I thought I’d put some shapes together in Visio to represent the Senate and House of Representatives.
There was an announcement last week of the second preview of .NET Core 3.0. Scrolling down the page, one item that caught my eye was the section on Windows Native Interop. This includes COM and therefore Visio. The post highlights a dotnet sample that targets Excel and so I thought I have a quick go at trying this against Visio as well.
In Visio, a page's drawing units are defined by the value found in the DrawingScale cell. Like all cells you can interrogate this in code via the Cell.Units property, but in the ShapeSheet, there's no direct method to find out the same information. So I thought I'd write down one way you could approach this.
If you deal with both metric and US units based diagrams then it can be useful to understand how Visio goes about surfacing the correct stencil under the 'More Shapes' menu. This, of course goes double if you're creating stencils yourself, so I thought I describe how things work below.
As of version 5.25, LINQPad has a new object diff’ing method that’s great for comparing objects and tracking down problems in code and this, of course, also applies to Visio.
In this post, I’m going to look at one method to provide a lookup in a 2D array, which could be used, for example, to map cells in the ShapeSheet to a table collection.
In this post I wanted to highlight an interesting use of the Window method SelectionForDragCopy to get hold of the shapes at an intersection between two containers. The most useful scenario for this is the intersection between a Phase column and Function row in a Cross Functional Flowchart.