我正在设计一个视觉工作室扩展,我需要一个停靠面板窗口。我可以使用WPF获取此窗口。在这个特定的窗口中,我显示了一些超过100的字符串的动态列表。为此,我在该窗口中使用了listbox。
由于此列表包含超过100个字符串,因此所有字符串都不可见。我应该能够垂直滚动列表以访问所有字符串。但我没有得到垂直滚动条。我尝试了一些东西,但他们没有工作。我是新手,所以,我无法弄清楚该做什么。代码如下。
<UserControl d:DesignHeight="300" d:DesignWidth="300">
<Grid >
<StackPanel Orientation="Vertical" CanVerticallyScroll="True" CanHorizontallyScroll="True" >
<TextBlock Margin="10" HorizontalAlignment="Center" Foreground="{DynamicResource {x:Static vsfx:VsBrushes.ToolWindowTextKey}}" Text="Available Projects"></TextBlock>
<ListBox Name="AllProjects" TabIndex="0" Height="Auto" ScrollViewer.CanContentScroll="True" ScrollViewer.VerticalScrollBarVisibility="Visible" />
</StackPanel>
</Grid> </UserControl>
我只用xaml形式做这些事情,而后端c#代码没做任何事情。你能告诉我哪里出错了吗?
答案 0 :(得分:1)
使用此功能,您将看到滚动条
<Grid >
<StackPanel Orientation="Vertical" CanVerticallyScroll="True" CanHorizontallyScroll="True" >
<TextBlock Margin="10" HorizontalAlignment="Center" Text="Available Projects"></TextBlock>
<ListBox Name="AllProjects" TabIndex="0" ScrollViewer.VerticalScrollBarVisibility="Visible" Height="100" />
</StackPanel>
</Grid>
只需将height属性修改为常量。