Added from my above comment, which turned out to be the problem.
Your UserControls have Height
and Width
explicitly set, which means they won't automatically resize/stretch to accommodate the child controls as you desire.
Removing the Height
(and ideally Width
), should do the trick:
<UserControl x:Class="X.UserControl1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
mc:Ignorable="d" />
<!-- Your Code -->
</UserControl>