私の WPF アプリケーションには、内部にいくつかのコントロールを含む Stackpanel があります。このスタックパネルにスクロールバーを追加するにはどうすればよいですか?
112794 次
5 に答える
186
に入れScrollViewer
ます。
于 2011-06-06T09:51:24.640 に答える
116
StackPanel にはスクロール メカニズムが組み込まれていませんが、いつでも StackPanel を ScrollViewer にラップできます。
<ScrollViewer VerticalScrollBarVisibility="Auto">
<StackPanel ... />
</ScrollViewer>
于 2011-06-06T09:52:24.960 に答える
13
それはこのように動作します:
<ScrollViewer VerticalScrollBarVisibility="Visible" HorizontalScrollBarVisibility="Disabled" Width="340" HorizontalAlignment="Left" Margin="12,0,0,0">
<StackPanel Name="stackPanel1" Width="311">
</StackPanel>
</ScrollViewer>
TextBox tb = new TextBox();
tb.TextChanged += new TextChangedEventHandler(TextBox_TextChanged);
stackPanel1.Children.Add(tb);
于 2012-07-29T00:33:01.747 に答える
0
水平方向の StackPanel の場合、両方のスクロールバーの可視性を明示的に配置すると、水平スクロールバーを取得できました。
<ScrollViewer VerticalScrollBarVisibility="Hidden" HorizontalScrollBarVisibility="Auto" >
<StackPanel Orientation="Horizontal" />
</ScrollViewer>
于 2015-11-05T03:01:55.937 に答える
-3
つまり、スタックパネル内の複数のアイテムをスクロールしたい場合は、その周りにグリッドを配置してみてください。定義により、スタックパネルの長さは無限です。
だから、次のようなことを試してください:
<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
<StackPanel Width="311">
<TextBlock Text="{Binding A}" TextWrapping="Wrap" Style="{StaticResource PhoneTextExtraLargeStyle}" FontStretch="Condensed" FontSize="28" />
<TextBlock Text="{Binding B}" TextWrapping="Wrap" Margin="12,-6,12,0" Style="{StaticResource PhoneTextSubtleStyle}"/>
</StackPanel>
</Grid>
ScrollViewer を使用してこれを機能させることもできます
于 2011-06-06T09:54:32.497 に答える