I have written a WPF user control and part of it involves dynamically adding elements to a canvas which effects the height of said canvas. The canvas is nested within a grid
did you try to wrap everything (your custom control contents) into a Viewbox? eg