0

問題があります: スクロール ビューに固定の高さのページがあります:

ページはこちら

ページ

キーボードをポップアップすると:

ここに画像の説明を入力

キーボードが画面の 50% を占めるようになりました。ページの表示部分をスクロールしたい - 作り方。ユーザーがページにテープを貼らないと、キーボードが閉じないため、一部のユーザーは [送信] ボタンに到達するまでスクロールしようとします。

ここに私のxamlがあります:

<ScrollViewer HorizontalAlignment="Stretch" Grid.Row="1" VerticalAlignment="Stretch" Margin="0,0">
            <Grid Margin="0" Grid.Row="1" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Background="White">
                <Grid.RowDefinitions>
                    <RowDefinition Height="100"/>
                    <RowDefinition Height="auto"/>
                    <RowDefinition Height="60"/>
                    <RowDefinition Height="80"/>
                    <RowDefinition Height="60"/>
                    <RowDefinition Height="auto"/>
                    <RowDefinition Height="auto"/>
                    <RowDefinition Height="auto"/>
                    <RowDefinition Height="auto"/>
                </Grid.RowDefinitions>
                <Rectangle Grid.Row="0" Fill="#FFE3E2E2" Margin="0"></Rectangle>
                <TextBlock x:Name="Comment" HorizontalAlignment="Center" Margin="10" TextWrapping="Wrap" Text="TextBlock" VerticalAlignment="Center" Foreground="Black" FontSize="22"/>
                <TextBlock Grid.Row="2" Margin="10" x:Name="FeedbackTitleLabel" HorizontalAlignment="Left" TextWrapping="NoWrap" Text="sgwrgggggg" VerticalAlignment="Center" Foreground="Black" FontSize="24"/>
                <TextBox x:Name="FeedbackTitle" HorizontalAlignment="Stretch" Margin="0,0,0,0" Grid.Row="3" TextWrapping="NoWrap" Text="" VerticalAlignment="Center" FontSize="24" BorderBrush="#BF7B7B7B" Background="#BFC9C9C9"/>
                <TextBlock Margin="10" x:Name="FeedbackContentLabel" HorizontalAlignment="Left" TextWrapping="NoWrap" Text="sgrsgsrgsegsg" VerticalAlignment="Center" Grid.Row="4" Foreground="Black" FontSize="24"/>
                <TextBox x:Name="FeedbackContent" HorizontalAlignment="Stretch" Margin="0" Grid.Row="5" TextWrapping="Wrap" Text="" VerticalAlignment="Stretch" FontSize="24" BorderBrush="#BF7B7B7B" Background="#BFC9C9C9"/>
                <StackPanel Grid.Row="6" Orientation="Horizontal">
                    <TextBlock Margin="10,0,10,0" x:Name="AdditionalItemsLabel" HorizontalAlignment="Left" TextWrapping="NoWrap" Text="sgsgsegsrg" VerticalAlignment="Center" Grid.Row="4" Foreground="Black" FontSize="24"/>
                    <local:Button2 Height="80" x:Name="Photo" HorizontalAlignment="Right" Margin="10" VerticalAlignment="Stretch" Width="177" Tap="Photo_Tap"/>
                </StackPanel>
                <local:Button3 x:Name="Send" HorizontalAlignment="Stretch" Margin="10" Height="80" Grid.Row="8" VerticalAlignment="Stretch" Tap="Send_Tap"/>
                <Grid Margin="10" Name="AttachmentGrid" Grid.Row="7" Visibility="Collapsed">
                    <Grid.RowDefinitions>
                        <RowDefinition Height="60"/>
                        <RowDefinition Height="auto"/>
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="*"/>
                        <ColumnDefinition Width="60"/>
                    </Grid.ColumnDefinitions>
                    <TextBlock Margin="0,10,10,10" Grid.ColumnSpan="2" x:Name="AttachedFilesLabel" HorizontalAlignment="Left" TextWrapping="NoWrap" Text="sgrsgsrgsegsg" VerticalAlignment="Center" Grid.Row="0" Foreground="Black" FontSize="24"/>
                    <StackPanel Grid.Row="2" x:Name="ImageThumbs" Orientation="Horizontal">

                    </StackPanel>
                    <Rectangle VerticalAlignment="Center" Grid.Row="0" Grid.ColumnSpan="2" Grid.RowSpan="2" Height="40" Width="40" Grid.Column="1" Fill="#FFC2C2C2" Stroke="Black" RadiusX="5" RadiusY="5" Tap="DeleteAttach_Tap"/>
                    <Image Grid.Row="0" Grid.RowSpan="2" IsHitTestVisible="False" Grid.Column="1" Height="30" Width="30" HorizontalAlignment="Center" VerticalAlignment="Center" Source="../*/delete.png"/>
                </Grid>
                <Grid Name="MessageGrid" Margin="10" Visibility="Collapsed" Grid.Row="1">
                    <Rectangle Fill="#00A7D1" Margin="0,0,0,0" Height="80" RadiusX="5" RadiusY="5"/>
                    <TextBlock x:Name="Message" HorizontalAlignment="Center" Margin="10" TextWrapping="Wrap" Text="TextBlock" VerticalAlignment="Center" Foreground="White" FontSize="22"/>
                </Grid>
            </Grid>
        </ScrollViewer>

私がそれをどのように見せたいかの例は、WPに追加する連絡先に移動し、名前を追加します:

ここに画像の説明を入力

強調表示された領域はスクロールできます。アプリで使用したいのですが...

4

1 に答える 1

4

同じ問題がありました。しかし、ついに私はそれを解決しました.Heightプロパティを使用してこれを行いました. 次の手順を実行してください

  • 最初に ScrollViewer を作成します
  • ScrollViewer の内側にコンテナ (例: Grid/StackPanel/Border など) を作成し、その中にすべてのコントロールを配置します。
  • ScrollViewer とコンテナに固定の高さを設定します (注: コンテナの高さは、ScrollViewer の高さより大きくする必要があります)。

以下のコードを参照してください

<ScrollViewer Height="500">
        <Grid Name="Container" Height="700">
            <TextBox/>
            <TextBox/>
            <TextBox/>
        </Grid>
</ScrollViewer>

これで、コンテナ Grid をスクロールしたり、表示されている KeyBoard をスクロールしたり、TextBox にフォーカスしたりすることができます。

于 2013-12-20T07:07:08.397 に答える