У меня есть изображение, размещенное на странице следующим образом
<Grid x:Name="LayoutRoot" Background="Transparent">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Image Name="im" Source="/images/hqdefault.jpg" Height="250" Stretch="UniformToFill" VerticalAlignment="Center"/>
</Grid>
это вся страница XAML, изображение можно загрузить с http://i.ytimg.com/vi/wNKKCHv-oOw/hqdefault.jpg
Код позади содержит некоторую логику для обработкиthe PageOrientation_Change
private void PhoneApplicationPage_OrientationChanged(object sender, OrientationChangedEventArgs e)
{
if (Orientation == PageOrientation.Landscape ||
Orientation == PageOrientation.LandscapeLeft ||
Orientation == PageOrientation.LandscapeRight)
{
im.Height = Application.Current.Host.Content.ActualWidth;
im.Width = Application.Current.Host.Content.ActualHeight;
im.VerticalAlignment = System.Windows.VerticalAlignment.Bottom;
im.HorizontalAlignment = System.Windows.HorizontalAlignment.Right;
}
else
{
im.Height = 250;
im.Width = Application.Current.Host.Content.ActualWidth;
}
}
Если кто-то может попробовать это, он / она может обнаружить, что StrechToFill обрезает содержимое изображения снизу, где, как я ожидаю, оно будет обрезать его сверху и снизу одинаково и сохранить изображениесодержание сосредоточено в области управления изображением.
HOpe Я ясно дал понять, если нет, рассмотрите возможность создания примера из предоставленного кода.Большое спасибо.