问题描述
我正在使用Windows Phone 8 app
,并且在XAML中具有这样的图像视图:
I am working on Windows Phone 8 app
and have a Image view like this in XAML:
<Image Name="Image"
Grid.Row="0"
Visibility="Collapsed"
Width="Auto"
Height="Auto"
Tap="Image_tap"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Margin="1,1,1,1"/>
现在我有一个名为Tap="Image_tap"
的事件,当我点击图像时,我想全屏显示同一图像时,顶部和底部没有任何条形,该如何实现?
Now i have this event called Tap="Image_tap"
, when i tap on the image i want to show the same image in full screen without any bar on top and bottom, how to acheive this ?
推荐答案
底部栏为ApplicationBar
,顶部栏为SystemTray
.如果您创建的新页面没有ApplicationBar
且SystemTray.IsVisible
为false,则您将拥有一个全屏页面.现在,只需在其中放置一个Image
即可,而不必在根目录下放置Grid
,您就可以将该页面用作全屏查看器.
Bottom bar is ApplicationBar
and top bar is SystemTray
. If you create a new page without the ApplicationBar
and with SystemTray.IsVisible
to false, you have a fullscreen page. Now, instead of having a Grid
at the root, place just one Image
and you can use that page as a fullscreen viewer.
<phone:PhoneApplicationPage
x:Class="SimpleApp.FullScreenPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:phone="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone"
xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
FontFamily="{StaticResource PhoneFontFamilyNormal}"
FontSize="{StaticResource PhoneFontSizeNormal}"
Foreground="{StaticResource PhoneForegroundBrush}"
SupportedOrientations="Portrait" Orientation="Portrait"
mc:Ignorable="d"
shell:SystemTray.IsVisible="False">
<Image Name="myImage" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"
Stretch="Uniform"/>
</phone:PhoneApplicationPage>
在主页面中,点击图像:
In MainPage where you tap image:
private void myImg_Tap(object sender, System.Windows.Input.GestureEventArgs e)
{
string context = ((sender as Image).Source as BitmapImage).UriSource.ToString();
NavigationService.Navigate(new Uri(String.Concat("/Page1.xaml?context=", context), UriKind.RelativeOrAbsolute));
}
在全屏页面中:
protected override void OnNavigatedTo(NavigationEventArgs e)
{
string context = this.NavigationContext.QueryString["context"];
myImage.Source = new BitmapImage(new Uri(context, UriKind.RelativeOrAbsolute));
base.OnNavigatedTo(e);
}
这篇关于全屏显示图像的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!