【发布时间】:2016-01-28 10:11:37
【问题描述】:
我有两个关于 ListBox/WrapPanel 的问题。
首先,我的设置: 在 XAML 中,我有一个列表框。 ListBox 内部是一个 WrapPanel。我以编程方式将 ListBoxItems 添加到 WrapPanel。
问题一
ListBoxItems [StackPanel with Image and TextBlock] 从左到右,从上到下填充。但是,如果 ListBoxItem 的数量多于 ListBox 中的空间,则不会出现垂直滚动条。以下 XAML 代码使垂直滚动条可见。但是,它仍然处于禁用状态:
<ListBox Name="li1StandortLinks" Background="Transparent" MaxHeight="300" ScrollViewer.VerticalScrollBarVisibility="Visible">
<WrapPanel Name="wp1StandortLinks" ItemHeight="80" ItemWidth="150" Width="755" />
</ListBox>
如何在需要时获得功能性的垂直滚动条?
问题二
当单击 ListBox 而不是 ListBoxItem [例如,在它们两个之间] 时,整个 ListBox 的背景会以蓝色突出显示。最初背景是透明的,即使单击 ListBox 本身,它也应该保持这种状态。捕捉 Click-Event 并将背景设置回透明似乎无济于事。蓝色的高亮颜色确实消失了,但不是 ListBox 背景变回透明,而是保持灰色。 我可以更改样式以使单击 ListBox 时颜色完全不改变吗?不过,我从来没有真正改变过 WPF 中的样式,所以我需要一个准确的解释。
【问题讨论】: