Чтобы растянуть путь, используйте свойство Stretch
. Это работает так же, как растяжение изображения - описано здесь: https://msdn.microsoft.com/en-us/library/system.windows.media.stretch(v=vs.110).aspx (System.Windows.Media> Stretch Enumeration). В случае, показанном ниже, установка значения Uniform
сохранит соотношение ширины и высоты пути, заполняя элемент управления, который он занимает, так что весь путь виден.
<Path Stretch="Uniform" Data="..."/>
Существует побочный эффект: растяжение пути таким образом «нормализует» его данные, т.е. даже если данные будут записаны так, что все точки будут преобразованы из начала координат [ 1 ], когда stretch, преобразование опущено [ 2 ] (надеюсь, я объясню это ясно).
Вы можете использовать это в своих интересах, когда имеете грязный объект из Inkscape, например (не преобразованный в источник), не беспокоясь о преобразованных данных.
<Grid Width="200" Height="200">
<TextBlock Text="(0,0)" />
<TextBlock Text="(200,200)" VerticalAlignment="Bottom" HorizontalAlignment="Right"/>
<Path Stroke="Blue" Stretch="None" Fill="Beige" Data="M 63,50 82,86 107,62 84,65 Z"/>
<Rectangle Stroke="Red" StrokeThickness="1"/>
</Grid>
<Grid Width="200" Height="200">
<TextBlock Text="(0,0)" />
<TextBlock Text="(200,200)" VerticalAlignment="Bottom" HorizontalAlignment="Right"/>
<Path Stroke="Blue" Stretch="Uniform" Fill="Beige" Data="M 63,50 82,86 107,62 84,65 Z"/>
<Rectangle Stroke="Red" StrokeThickness="1"/>
</Grid>