Это может помочь, но для случая, когда вы переходите на эту конкретную страницу, а не для начальной страницы - поэтому только частично отвечаете на вопрос. Он запускает OnOrientationChanged, хотя никаких изменений сделано не было! (Выяснил это решение после попытки найти решение в течение двух дней):
На конкретной странице напишите. код xaml
Orientation="None"
На стороне .xaml.cs напишите под
InitializeComponent();
Orientation = this.Orientation;
this.OrientationChanged += new EventHandler<OrientationChangedEventArgs>
(OnOrientationChanged);
и отдельно
void OnOrientationChanged(object sender, OrientationChangedEventArgs e)
{
if ((e.Orientation & PageOrientation.Landscape) != 0)
{
MyImage.Height = 480; //for example
}
{
MyImage.Width = 480; // for example
}
}
В моем случае я разместил изображение следующим образом:
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<StackPanel>
<Image x:Name="MyImage"/>
</StackPanel>
.. сопровождается другим кодом, все еще загружается, в течение которого показывается картинка ...
Уменьшается размер изображения в ландшафтном режиме при входе на страницу!
Получил решение, наконец, увидев Джефф Prosises сайт