私はリストビューを含むWinRTアプリケーションで作業しています。リストビューは最近成長し、私はそれの周りに垂直スクロールバーを配置する必要があります。 これまでのところ、グリッドの高さを500にハードコードしました。 しかし、どれくらいのスペースがあるかを検出するために高さを設定する方法を知りたいと思います。これは、使用されているデバイスによって異なる場合があります。それ、どうやったら出来るの?ListViewのスクロール - 画面の高さの検出が必要
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="500"/>
</Grid.RowDefinitions>
<StackPanel Grid.Row="0" Orientation="Horizontal">
<TextBlock Text="*" FontSize="40" FontWeight="Bold" Foreground="Red"/>
<TextBlock Text=" = Required " FontSize="20"/>
</StackPanel>
<ScrollViewer Grid.Row="1" VerticalScrollBarVisibility="Auto" >
<ListView
ItemsSource="{Binding Path=Survey.SelectedSection.Questions, Mode=TwoWay}"
IsSwipeEnabled="False"
SelectionMode="None"
Background="White"
ItemTemplateSelector="{StaticResource ResourceKey=QuestionDisplay}"
ItemContainerStyle=
"{StaticResource ResourceKey=QuestionListViewItemContainerStyle}" />
</ScrollViewer>
</Grid>
ListViewにはすでにScrollViewerがテンプレートに埋め込まれています。親のScrollViewerを取り除いて、2行目の高さを 'Height =" * "'に設定すると、デフォルトで 'Auto'に設定されているので起動します。 –
ScrollViewer.VerticalScrollBarVisibilityはデフォルトでは自動です。それがスクロールを呼び出さないなら、私の次の質問はStackPanelのように、このグリッドが子である親コンテナですか?そのようなこともスクロールを呼び出さないようにするためです。 –
あなたは正しいです。スタックパネルの親がいましたが、今ではそれを取り除きました。それではありがとうございます。 – arame3333