Сохранение пропорций фигуры при изменении размеров экрана приложения
Столкнулся с такой проблемой. Мне нужно создать вот такую область в xaml, которая бы сохраняла свои пропорции при изменении размеров экрана приложения 
Если использовать стандартные единицы измерения для Width и Height (max/min Width/Height) для фигуры Rectangle, то при изменении размеров экрана они могут выходить за пределы размеров экрана приложения или занимать больше/меньше места рабочей области, чем задумывалось. Чтобы исправить эту проблему я программно к окну добавил обработчик события: "this.SizeChanged += ReloadRectangle;", и с помощью алгоритмов при изменении размеров экрана высчитывал в процентах сколько должно занимать ширина и высота Rectangle.
Но из этого вытекают очевидные проблемы.
- Затраты времени на вычисление и создание такого алгоритма.
- Снижение производительности, т.к. при изменении размеров экрана приложения все алгоритмы высчитываются по новой.
- Нагромождение програмного кода (вместо разметки
xaml)
И последнее. Я бы мог для этого использовать компановку Grid (к примеру), но в данном случае мне нужно, чтобы вся компановка происходила в контейнере Canvas. Не знаю, буду используется ли такой подход в реальных приложениях. Но я экспериментирую обучаясь:)
Есть ли решение данной проблемы? Спасибо заранее за ответ.