带有堆栈面板的滚动查看器不工作
Scrollviewer with stackpanel not working
我是 WPF 的新手,我确信我遗漏了一些微不足道的东西。
当堆栈面板的内容增长时,滚动查看器不工作。
<ItemsControl>
<TextBlock Margin="30,4,0,4" Text="Associated Data: None" Visibility="{Binding SelectedPBL.PBLData.Count, Converter={StaticResource VisibleIfZero}}"/>
<ScrollViewer>
<StackPanel Margin="30,4,0,4" Orientation="Horizontal" Visibility="{Binding SelectedPBL, Converter={StaticResource CollapsedIfNull}}" ScrollViewer.VerticalScrollBarVisibility="Auto">
<TextBlock FontSize="12" Text="Associated Data:" Visibility="{Binding SelectedPBL.PBLData.Count, Converter={StaticResource CollapsedIfZero}}"/>
<ItemsControl FontSize="12" ItemsSource="{Binding SelectedPBL.PBLData}" >
<ItemsControl.ItemTemplate>
<DataTemplate>
<WrapPanel Margin="20,0,20,0" Orientation="Horizontal">
<TextBlock Margin="0,0,10,0" Text="{Binding Path=Key, StringFormat=({0})}"/>
<TextBlock Text="{Binding Path=Value}"/>
</WrapPanel>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</StackPanel>
</ScrollViewer>
</ItemsControl>
尝试限制 ItemsControl 或 ScrollViewer 的高度(例如添加 Height="200")。如果高度不受限制,ScrollViewer 将根据需要占用尽可能多的空间,并且永远不会有滚动的理由。
我是 WPF 的新手,我确信我遗漏了一些微不足道的东西。 当堆栈面板的内容增长时,滚动查看器不工作。
<ItemsControl>
<TextBlock Margin="30,4,0,4" Text="Associated Data: None" Visibility="{Binding SelectedPBL.PBLData.Count, Converter={StaticResource VisibleIfZero}}"/>
<ScrollViewer>
<StackPanel Margin="30,4,0,4" Orientation="Horizontal" Visibility="{Binding SelectedPBL, Converter={StaticResource CollapsedIfNull}}" ScrollViewer.VerticalScrollBarVisibility="Auto">
<TextBlock FontSize="12" Text="Associated Data:" Visibility="{Binding SelectedPBL.PBLData.Count, Converter={StaticResource CollapsedIfZero}}"/>
<ItemsControl FontSize="12" ItemsSource="{Binding SelectedPBL.PBLData}" >
<ItemsControl.ItemTemplate>
<DataTemplate>
<WrapPanel Margin="20,0,20,0" Orientation="Horizontal">
<TextBlock Margin="0,0,10,0" Text="{Binding Path=Key, StringFormat=({0})}"/>
<TextBlock Text="{Binding Path=Value}"/>
</WrapPanel>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</StackPanel>
</ScrollViewer>
</ItemsControl>
尝试限制 ItemsControl 或 ScrollViewer 的高度(例如添加 Height="200")。如果高度不受限制,ScrollViewer 将根据需要占用尽可能多的空间,并且永远不会有滚动的理由。