Windows 10 UWA(图像显示)
本文关键字:显示 图像 UWA Windows | 更新日期: 2023-09-27 18:12:52
我在列表视图中显示图像。当我点击时,我需要在同一应用程序中全屏打开该图像。当用户点击后退按钮时它应该把它带回列表视图。哪个控件或我如何做到这一点(显示图像全屏)。对c#和UWA开发相当陌生。
谢谢
当我点击时,我需要在同一个应用程序中全屏打开该图像
对于您的需求,一个简单的方法是您可以从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控件来显示带有飞出视觉效果的图像。如果你想全屏显示图像,你需要将ContentDialog的FullSizeDesired属性设置为true。内容对话框代码如下:
<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>
为此,您需要启用系统返回按钮导航,并将其配置为让第二页可以返回主页面。所以当用户点击后退按钮时它应该把它带回到列表视图
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();
}
}
我对它进行了测试,我上面提供的两个方法都可以通过back按钮返回到ListView。更多细节请参考此处完成的演示,您可以下载进行测试,看看它是否是您想要的。此外,遵循通用应用程序平台指南来探索更多关于uwp开发的内容。