1

xamlで画面の残りの部分を表示するにはどうすればよいですか?高さ2000ピクセルのテキストブロックを追加しましたが、残りをどのように確認できますか?そして、コンテンツセクションにscrollviewerを追加すると、テキストブロックが自動的に左上隅に移動するとどうなりますか?また、xamlでは、テキストが中央に配置されているので問題ないように見えますが、エミュレーターではテキストは1行になっています。それを修復する方法は?

<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" d:DesignHeight="768" d:DesignWidth="480"
    shell:SystemTray.IsVisible="True">

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

        <!--TitlePanel contains the name of the application and page title-->
        <StackPanel x:Name="TitlePanel" Grid.Row="0" Margin="12,17,0,28">
            <TextBlock x:Name="PageTitle" Text="Weider's six" Margin="9,-7,0,0" Style="{StaticResource PhoneTextTitle1Style}" FontSize="64" />
        </StackPanel>

        <!--ContentPanel - place additional content here-->
        <ScrollViewer>
        <Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
                <TextBlock Height="2000" HorizontalAlignment="Left" Margin="0,6,0,0" Name="TextBlock1" Text="Weider 6 pack Training is a perfect exercise for flat stomach.
    This easy training programme has many advantages.
    It's perfect for beginners and for experts – 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.
    It helps not only carve your muscles but also burn fat – 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.
    It is easy – it is a really easy training set which you can train almost anywhere. All you need is flat ground.
    It gives excellent results – 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.
    How to do Weider 6

    Starting Position

    Lay flat on the ground, hands along the body.
    1 – exercise 1

    Lift your right leg and bend your knee to right angle angle
    Lift your upper torso to contract abdominal muscles and hold the lifted knee with your hands.
    Hold still for 3 seconds.
    Return to the starting position.
    Repeat the exercise with the other leg
    2 – exercise 2

    Lift both legs and bend your knees to right angle
    Lift your upper torso to contract abdominal muscles and hold both knees
    Hold still for 3 seconds

    Return to the starting position" VerticalAlignment="Top" Width="450" />
        </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>
4

2 に答える 2

3

ScrollViewer、その周りではなく、ContentPanelのグリッドに配置してください。

編集:ここでコードを変更する必要があります

   <!--ContentPanel - place additional content here-->
    <ScrollViewer>
    <Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">

コードは次のようになります。

   <!--ContentPanel - place additional content here-->
    <Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
    <ScrollViewer>

以下のサンプルは、それがどのように機能するかを示しています

スクロールビューアが間違ったグリッドにある可能性がありますか?これを試したところ、スクロールするテキストブロックが表示されます。

確認すべきことがいくつかあります。

  • ScrollViewerは、通常「ContentPanel」という名前のグリッド内にある必要があります。
  • オーバーフローテキストの処理方法を指定する必要があります。これは、TextWrapping属性を介して行われます。
<phone:PhoneApplicationPage 
    x:Class="StackoWPF.MainPage"
    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"
    mc:Ignorable="d" d:DesignWidth="480" d:DesignHeight="768"
    FontFamily="{StaticResource PhoneFontFamilyNormal}"
    FontSize="{StaticResource PhoneFontSizeNormal}"
    Foreground="{StaticResource PhoneForegroundBrush}"
    SupportedOrientations="Portrait" Orientation="Portrait"
    shell:SystemTray.IsVisible="True">

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

        <!--TitlePanel contains the name of the application and page title-->
        <StackPanel x:Name="TitlePanel" Grid.Row="0" Margin="12,17,0,28">
            <TextBlock x:Name="ApplicationTitle" Text="MY APPLICATION" Style="{StaticResource PhoneTextNormalStyle}"/>
            <TextBlock x:Name="PageTitle" Text="page name" Margin="9,-7,0,0" Style="{StaticResource PhoneTextTitle1Style}"/>
        </StackPanel>

        <!--ContentPanel - place additional content here-->
        <Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
            <ScrollViewer>
                <TextBlock Height="2000" TextWrapping="Wrap">
                    <TextBlock.Text>
                        One two three four five six seven eight nine ten eleven 
                        One two three four five six seven eight nine ten eleven 
                        One two three four five six seven eight nine ten eleven 
                        One two three four five six seven eight nine ten eleven 
                        One two three four five six seven eight nine ten eleven 
                        One two three four five six seven eight nine ten eleven 
                        One two three four five six seven eight nine ten eleven 
                        One two three four five six seven eight nine ten eleven 
                        One two three four five six seven eight nine ten eleven 
                        One two three four five six seven eight nine ten eleven 
                        One two three four five six seven eight nine ten eleven 
                        One two three four five six seven eight nine ten eleven 
                        One two three four five six seven eight nine ten eleven 
                        One two three four five six seven eight nine ten eleven 
                        One two three four five six seven eight nine ten eleven 
                        One two three four five six seven eight nine ten eleven 
                        One two three four five six seven eight nine ten eleven 
                        One two three four five six seven eight nine ten eleven 
                        One two three four five six seven eight nine ten eleven 
                        One two three four five six seven eight nine ten eleven 
                        One two three four five six seven eight nine ten eleven 
                        One two three four five six seven eight nine ten eleven 
                        One two three four five six seven eight nine ten eleven 
                        One two three four five six seven eight nine ten eleven 
                        One two three four five six seven eight nine ten eleven 
                        One two three four five six seven eight nine ten eleven 
                        One two three four five six seven eight nine ten eleven 
                    </TextBlock.Text>
                </TextBlock>
            </ScrollViewer>
        </Grid>
    </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>
于 2012-04-15T18:15:55.587 に答える
0

ロバティクスはすでにそのほとんどに答えています。ただし、テキストブロックに改行と書式設定が必要な場合 (これが必要なようです)、これを参照してください。

あなたは私が答えた同様の質問を投稿しました。

于 2012-04-19T06:35:48.270 に答える