2009-11-01 20 views
10

Sto provando a creare un ListBox trasparente in un'applicazione WPF. Voglio che il ListBox sia completamente trasparente, quindi un'immagine di sfondo è visibile "dietro" al ListBox. Tuttavia, voglio che i miei oggetti ListBox siano completamente opachi, vale a dire che si trovano in cima all'immagine di sfondo.Come posso rendere trasparente la listbox, ma gli elementi della lista sono opachi in WPF?

Qualcuno sa come posso realizzare questo?

Grazie in anticipo!

+0

Impostare il colore di sfondo per Elenco su trasparente e applicare lo stile agli elementi in cui si imposta il colore di sfondo su bianco. Spero che questo funzioni –

risposta

19

Certo, è così semplice come impostare le proprietà Background e BorderBrush sulla ListBox a trasparente e quindi impostando uno sfondo per le ListBoxItems:

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

NOTA: ho aggiunto un margine per le ListBoxItems solo per Dimostrare la spaziatura tra i ListBoxItems mostrerà fino allo sfondo rosso dello StackPanel circostante.

+0

questo ha salvato il mio problema (+1) – Singleton

Problemi correlati