我正在尝试在WPF应用程序中创建透明的ListBox。我希望ListBox完全透明,因此背景图像可以在ListBox“后面”显示。但是,我希望我的ListBox项目完全不透明,也就是说,它们位于背景图像之上。
有谁知道我怎么做到这一点?
提前Thanx!
答案 0 :(得分:23)
当然,就像将ListBox上的Background和BorderBrush属性设置为Transparent,然后为ListBoxItems设置Background一样简单:
<StackPanel Background="Red">
<ListBox Background="Transparent" BorderBrush="Transparent">
<ListBox.Resources>
<Style TargetType="{x:Type ListBoxItem}">
<Setter Property="Background" Value="White" />
<Setter Property="Margin" Value="1" />
</Style>
</ListBox.Resources>
<ListBoxItem Content="First Item"/>
<ListBoxItem Content="Secton Item"/>
</ListBox>
</StackPanel>
注意:我在ListBoxItems中添加了一个边距,只是为了说明ListBoxItems之间的间距将一直显示到周围的StackPanel的红色背景。