2016-10-13 2 views
0

Я показываю изображения в виде списка. Когда я нажимаю, мне нужно открыть это изображение в полноэкранном режиме в том же приложении. Поэтому, когда пользователь нажимает кнопку «Назад», он должен вернуть его в список. Какой контроль или как я могу это сделать (отображение полного изображения на экране). Довольно новый для разработки C# и UWA.Windows 10 UWA (отображение изображения)

Благодаря

ответ

3

Когда я нажимаю то мне нужно, чтобы открыть эту картинку на весь экран в одном приложении

Для ваших требований, один простой способ заключается в том, что вы можете перейти на вторую страницу из ListView и показать изображение на весь экран страницы с ImageControl. навигация коду нравится следующим образом:

private void Image_PointerPressed(object sender, PointerRoutedEventArgs e) 
{ 
    Image selectedimage = e.OriginalSource as Image; 
    Images select = (Images)selectedimage.DataContext; 
    Frame.Navigate(typeof(ShowImage),select); 
} 

Другой способ заключается в использовании ContentDialog управления, чтобы показать изображение с всплывающими визуальными эффектами. Если вы хотите показать полноэкранное изображение, вам необходимо установить свойство FullSizeDesired ContentDialog равным true. ContentDialog код следующим образом:

<ContentDialog 
... 
    FullSizeDesired ="True" 
    HorizontalAlignment="Stretch" 
    Canvas.ZIndex="1" MaxHeight="1920" MaxWidth="1440"> 
    <Image x:Name="showimage" Source="{Binding ImageUrl}" Stretch="Fill" Margin="0"></Image> 
</ContentDialog> 

Таким образом, когда пользователь нажимает на кнопку назад он должен принять его обратно к просмотру списка.

Для этого вам необходимо включить систему навигации back button и настроить ее, чтобы вторая страница могла вернуться на главную страницу. Код для кнопки возврата в App.xaml.cs следующим образом:

private void App_BackRequested(object sender, 
    Windows.UI.Core.BackRequestedEventArgs e) 
{ 
    Frame rootFrame = Window.Current.Content as Frame; 
    if (rootFrame == null) 
     return; 
    if (rootFrame.CanGoBack && e.Handled == false) 
    { 
     e.Handled = true; 
     rootFrame.GoBack(); 
    } 
} 

Я проверил это, оба из двух методов, приведенных выше, я могу обратно в ListView с помощью кнопки возврата. Более подробную информацию см. В завершенном демо here, вы можете скачать для тестирования, чтобы убедиться, что это то, что вы хотите.

Кроме того, после universal application platform guide, чтобы узнать больше о разработке uwp.

+0

@cykopath, вы решили проблему? –

Смежные вопросы