全屏幕上的Windows Phone 7应用程序

时间:2013-09-25 08:06:18

标签: xaml windows-phone-7 screen-resolution

我开始为windows phone 7编写一个应用程序,但是当我在模拟器中测试它时,屏幕一侧有一个我无法填充的空白条带。这是页面的XAML:     

<!--LayoutRoot is the root grid where all page content is placed-->
<Grid x:Name="LayoutRoot" Background="Transparent">
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="776*" />
        <ColumnDefinition Width="24*" />
    </Grid.ColumnDefinitions>
    <Grid.RowDefinitions>
        <RowDefinition Height="0"/>
        <RowDefinition Height="480*"/>
    </Grid.RowDefinitions>

    <!--TitlePanel contains the name of the application and page title-->
    <StackPanel x:Name="TitlePanel" Grid.Row="1" Margin="0,0,0,0" Grid.ColumnSpan="2">
        <Image Height="480" Name="image1" Stretch="Fill" Width="728" Source="/app;component/Background.jpg" />
        <MediaElement Height="0" Name="mediaElement1" Width="1" Volume="1" Source="Kalimba.mp3" />
    </StackPanel>

    <Image Grid.Row="1" Height="51" HorizontalAlignment="Left" Margin="78,164,0,0" Name="image2" Stretch="Fill" VerticalAlignment="Top" Width="180" Source="/app;component/Easy_Button_Normal.png" />
    <Image Grid.Row="1" Height="51" HorizontalAlignment="Left" Margin="468,164,0,0" Name="image3" Source="/app;component/Hard_Button_Normal.png" Stretch="Fill" VerticalAlignment="Top" Width="180" />
    <Image Grid.Row="1" Height="51" HorizontalAlignment="Left" Margin="272,164,0,0" Name="image4" Source="/app;component/Medium_Button_Normal.png" Stretch="Fill" VerticalAlignment="Top" Width="180" />
    <Image Grid.Row="1" Height="118" HorizontalAlignment="Left" Margin="286,362,0,0" Name="image5" Stretch="Uniform" VerticalAlignment="Top" Width="148" Source="/app;component/Play_Button_Normal.png" />
    <Image Grid.Row="1" Height="36" HorizontalAlignment="Left" Margin="78,122,0,0" Name="image6" Stretch="Fill" VerticalAlignment="Top" Width="238" Source="/app;component/Headline.png" />
    <Image Grid.Row="1" Height="34" HorizontalAlignment="Left" Margin="620,426,0,0" Name="image7" Stretch="Fill" VerticalAlignment="Top" Width="32" Source="/app;component/Play_Button.png" Tap="image7_Tap" />
    <Image Grid.Row="1" Height="34" HorizontalAlignment="Left" Margin="58,426,0,0" Name="image8" Source="/app;component/Scores_Button.png" Stretch="Fill" VerticalAlignment="Top" Width="32" Tap="image8_Tap" />
    <!--ContentPanel - place additional content here-->
</Grid>

<!--Sample code showing usage of ApplicationBar-->
<!--<phone:PhoneApplicationPage.ApplicationBar>
    <shell:ApplicationBar IsVisible="True" IsMenuEnabled="True">
        <shell:ApplicationBarIconButton IconUri="/Images/appbar_button1.png" Text="Button 1"/>
        <shell:ApplicationBarIconButton IconUri="/Images/appbar_button2.png" Text="Button 2"/>
        <shell:ApplicationBar.MenuItems>
            <shell:ApplicationBarMenuItem Text="MenuItem 1"/>
            <shell:ApplicationBarMenuItem Text="MenuItem 2"/>
        </shell:ApplicationBar.MenuItems>
    </shell:ApplicationBar>
</phone:PhoneApplicationPage.ApplicationBar>-->

任何人都可以帮助我吗? 感谢

2 个答案:

答案 0 :(得分:1)

手机上没有“全屏”概念。只需更改控件即可占用整个屏幕。

您可以明确地执行此操作,或者,如果您将尺寸设置为自动,则只需隐藏屏幕上的所有其他项目。

Windows Phone 7和Windows Phone 8屏幕尺寸(分辨率)之间的所有差异均为here解释。 (在MSDN网站上,有样本)。

在Windows手机上,您必须管理所有屏幕分辨率...如果您的项目默认为Windows Phone 7,则您的屏幕尺寸适用于此项目,并且您使用的是WVGA(480 * 800)。而且,如果您不管理所有尺寸的屏幕,在720p的Windows Phone设备(或仿真器)上,您就会成为应用程序顶部黑屏的一部分。

<强> For informations: Windows Phone 7 devices just manage

  • WVGA分辨率(480 * 800)

<强> Windows Phone 8 devices manage three screen sizes:

  • WVGA分辨率(480 * 800)
  • WXGA分辨率(768×1280)
  • 720p分辨率(720×1280) //谣言Part

而且,使用Windows Phone 8和GDR3更新时,Windows Phone 8可以管理一个额外的屏幕尺寸

  • 1080p分辨率(1080 * 1920) //结束谣言部分

确保

中有属性
<phone:phoneApplicationPage shell:SystemTray.IsVisible="True">

对于全屏节目必须设置为false。

答案 1 :(得分:0)

您在网格中设置了两列,但只使用了一列。请尝试删除列定义:

    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="776*" />
        <ColumnDefinition Width="24*" />
    </Grid.ColumnDefinitions>