簡単なチャットアプリを作成しているときに、次のコードで2つの問題に直面しています。このコードは、ページの上部にテキストブロックを表示し、下部に 2 つのテキストボックス スタックを表示します。さらに、残りのギャップを埋めるために自動高さになるリストボックス。
<Grid x:Name="LayoutRoot" Background="Transparent">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Rectangle Height="1" Fill="White" VerticalAlignment="Top"/>
<TextBlock Text="Hello World!" Grid.Row="0" FontSize="36"/>
<Listbox Grid.Row="1"/>
<TextBox Grid.Row="2"/>
<TextBox Grid.Row="3"/>
</Grid>
上部のテキストボックスの 1 つをクリックすると、SIP キーボードが表示され、ページ内のすべてのコンテンツが押し上げられます。ここでの主な問題は、上部のテキストブロックが消えて上部に隠れることです。SIP キーボードが表示されている間、動かないようにするにはどうすればよいですか?
一番下のテキスト ボックスにフォーカスがあると、SIP キーボードが表示され、すべてのコンテンツが押し上げられます。この場合、キーボードはそのテキスト ボックスにちょうど収まり、くっつきます。ただし、他のテキストボックスにフォーカスがある場合、キーボードはそれらの間にギャップを作ります。一番下のキーボードがフォーカスされているときと同じようにキーボードを動作させるにはどうすればよいですか?