2011-11-11 59 views
25

Intento crear una ventana con una esquina redondeada. Establecí el fondo de la ventana en transparente y establecí el fondo del borde en blanco. Sin embargo, en la región entre el borde y la ventana, obtengo un fondo negro en lugar de transparente.El fondo transparente se vuelve negro en WPF

Desarrollo en C# WPF, VS2010 en la ventana 7. A continuación está mi XAML y captura de pantalla.

XAML:

<Window WindowStyle="None" Background="Transparent"> 
    <Border BorderBrush="Black" BorderThickness="1" CornerRadius="25" Background="White"> 
     <Grid> 
      ... some content ... 
     </Grid> 
    </Border> 
</Window> 

Captura de pantalla: enter image description here

Respuesta

53

También es necesario establecer AllowsTransparency="True" en su etiqueta Window utilizar un fondo de la ventana transparente

<Window WindowStyle="None" 
     Background="Transparent" 
     AllowsTransparency="True"> 

</Window> 
+1

gracias a Rachel, hace th en el trabajo también a través de XP y Vista? – KMC

+0

@KMC Esa propiedad es necesaria para que WPF active Transparencia y vea lo que está detrás de la aplicación. Sé que funciona en XP y Windows 7. No he probado en Vista, pero supongo que lo mismo. – Rachel