2009-11-01 24 views
10

WPF uygulamasında saydam bir ListBox oluşturmaya çalışıyorum. ListBox'ın tamamen şeffaf olmasını istiyorum, böylece bir arka plan görüntüsü ListBox'un "arkasında" görünür. Ancak, ListBox öğelerimin tamamen opak olmasını istiyorum, yani arka plan görüntüsünün üstünde yatıyorlar.Liste kutusunu nasıl şeffaf yapabilirim, ancak liste kutusu öğeleri WPF'de opak mı?

Bunu nasıl başarabileceğimi bilen var mı?

Thanx önceden!

+0

Arka plan rengini saydam olarak ayarla ve stili arka plan rengini beyaza ayarladığınız öğelere uygula. Umarım bu –

cevap

19

Tabii, bu Şeffaf için ListBox ilgili arka plan ve BorderBrush özelliklerini belirleyerek ve ardından ListBoxItems için Arka Plan ayarı kadar basit:

<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> 

NOT: ben sadece ListBoxItems bir Marjı eklendi ListBoxItems arasındaki aralığı, StackPanel'in etrafındaki kırmızı arkaplana doğru gösterecek şekilde gösterecektir.

+0

çalışır, bu benim sorunumu kurtardı (+1) – Singleton

İlgili konular