滚动视觉工作室手机模拟器

时间:2012-04-30 20:39:13

标签: visual-studio-2010 windows-phone-7

我需要在模拟器中使用scrollviewer的帮助。在xaml中它的一切都很好,但在模拟器中我有...嗯bug?或者这是我的坏事。当我想向下滚动时,它会下降...所有屏幕的1/3 ...当我释放时它自动上升到前一个位置(起始位置) 我不知道这是我的坏,还是模拟器错误...

<phone:PhoneApplicationPage 
    x:Class="Excercises.Weider_s_six"
    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="True" d:DesignHeight="768" d:DesignWidth="480">

    <!--LayoutRoot is the root grid where all page content is placed-->
    <Grid x:Name="LayoutRoot" Background="#FF1FB0DB">
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto"/>
            <RowDefinition Height="*"/>
        </Grid.RowDefinitions>



        <!--ContentPanel - place additional content here-->

        <ScrollViewer>
            <Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0" Height="1500">

                <TextBlock HorizontalAlignment="Left" Margin="1,15,0,85" Width="Auto" Height="Auto" Name="TextBlock1" TextWrapping="Wrap"> 
                <LineBreak />
            <Run FontFamily="Segoe WP" FontSize="27" FontWeight="ExtraBlack" TextDecorations="Underline">
               Weider 6 pack Training is a perfect exercise for flat stomach. 
                </Run>
                <LineBreak />
            <Run Text="This easy training programme has many advantages." FontSize="27" />
            <LineBreak />
            <Run Text="1. It's perfect for beginners and for experts" FontWeight="ExtraBlack" TextDecorations="Underline" FontSize="27" />
            <Run Text=" – exercises are easy and begin with the basic level, so every beginner can use them but they get more complicated pretty fast so advanced sportsmen can also be interested in them." FontSize="27" />
            <LineBreak />
            <Run Text="2.It helps not only carve your muscles but also burn fat" FontWeight="ExtraBlack" TextDecorations="Underline" FontSize="27" />
            <Run Text=" – during the exercise you not only use your abdominal rectus but you also move your legs and arms. It is also because W6 puts pressure on the number of repetitions. It carves your muscles but also burns fat. You can train W6 for about 40 minutes without taking any breaks – you use up all glycogen in blood and start burning the fat." FontSize="27" />
            <LineBreak />
            <Run Text="3.It is easy " FontStyle="Normal" FontWeight="ExtraBlack" TextDecorations="Underline" FontSize="27" />
            <Run Text="– it is a really easy training set which you can train almost anywhere. All you need is flat ground." FontSize="27" />
            <LineBreak />
            <Run Text="4.It gives excellent results" FontStyle="Normal" FontWeight="ExtraBlack" TextDecorations="Underline" FontSize="27" />
            <Run Text=" – if you want to have a flat stomach W6 is designed just for you. You can see the first effects after just a week and after a whole series it is really impressive." FontSize="27" />"
            <LineBreak />
                </TextBlock>



            </Grid>
        </ScrollViewer>

    </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>-->

</phone:PhoneApplicationPage>

2 个答案:

答案 0 :(得分:1)

导致此问题是因为ScrollViewer在需要滚动之前不知道它可以占用多少空间,因此占用了无限空间,因此不需要滚动它的内容。你看到的弹跳是当你试图超越scrollviewers容器的末尾时会发生的事情。

你可以通过从LayoutRoot中删除RowDefinition来解决这个问题,因为它是网格中唯一的项目。

目前,它可以连续增长,可以增长(这就是将行高设置为“自动”的意思)。这与网格空间无关。您需要限制ScrollViewer可以占用的空间,因此它知道需要滚动它的内容。

答案 1 :(得分:1)

您需要在此处更改一些内容才能使其正常工作。首先,你的ScrollViewer确实应该在网格内。其次,摆脱你网格上的高度。它看起来像这样:

<!--LayoutRoot is the root grid where all page content is placed-->
<Grid x:Name="LayoutRoot" Background="#FF1FB0DB">
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto"/>
        <RowDefinition Height="*"/>
    </Grid.RowDefinitions>



    <!--ContentPanel - place additional content here-->

  <Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0" >
    <ScrollViewer>

      <TextBlock HorizontalAlignment="Left" Margin="1,15,0,85" Width="Auto" Height="Auto" Name="TextBlock1"
                 TextWrapping="Wrap">
        <LineBreak />
        <Run FontFamily="Segoe WP" FontSize="27" FontWeight="ExtraBlack" TextDecorations="Underline">
          Weider 6 pack Training is a perfect exercise for flat stomach.
        </Run>
        <LineBreak />
        <Run Text="This easy training programme has many advantages." FontSize="27" />
        <LineBreak />
        <Run Text="1. It's perfect for beginners and for experts" FontWeight="ExtraBlack"
             TextDecorations="Underline" FontSize="27" />
        <Run
            Text=" – exercises are easy and begin with the basic level, so every beginner can use them but they get more complicated pretty fast so advanced sportsmen can also be interested in them." FontSize="27" />
        <LineBreak />
        <Run Text="2.It helps not only carve your muscles but also burn fat" FontWeight="ExtraBlack"
             TextDecorations="Underline" FontSize="27" />
        <Run Text=" – during the exercise you not only use your abdominal rectus but you also move your legs and arms. It is also because W6 puts pressure on the number of repetitions. It carves your muscles but also burns fat. You can train W6 for about 40 minutes without taking any breaks – you use up all glycogen in blood and start burning the fat." FontSize="27" />
        <LineBreak />
        <Run Text="3.It is easy " FontStyle="Normal" FontWeight="ExtraBlack" TextDecorations="Underline"
             FontSize="27" />
        <Run Text="– it is a really easy training set which you can train almost anywhere. All you need is flat ground." FontSize="27" />
        <LineBreak />
        <Run Text="4.It gives excellent results" FontStyle="Normal" FontWeight="ExtraBlack"
             TextDecorations="Underline" FontSize="27" />
        <Run Text=" – if you want to have a flat stomach W6 is designed just for you. You can see the first effects after just a week and after a whole series it is really impressive." FontSize="27" />
        "
        <LineBreak />
      </TextBlock>


    </ScrollViewer>
  </Grid>

</Grid>