Xaml 向全景背景(如市场)添加透明过滤器

Xaml 向全景背景(如市场)添加透明过滤器,xaml,windows-phone,panorama-control,opacitymask,Xaml,Windows Phone,Panorama Control,Opacitymask,我试图在全景背景中添加一个透明层,使背景图像变暗,这样无论图像中的颜色如何,都可以显示内容。就像在WP7市场或手机上的图片中心一样 我玩过不透明度遮罩。在paint.net中创建了一个透明图像,用作不透明度遮罩 <ImageBrush x:Name="MyOpacityBrush" Stretch="Fill" ImageSource="../Images/imageFilter.png" /> <ImageBrush x:Name="panoramaBrush" Im

我试图在全景背景中添加一个透明层,使背景图像变暗,这样无论图像中的颜色如何,都可以显示内容。就像在WP7市场或手机上的图片中心一样

我玩过不透明度遮罩。在paint.net中创建了一个透明图像,用作不透明度遮罩

<ImageBrush x:Name="MyOpacityBrush" Stretch="Fill" ImageSource="../Images/imageFilter.png" />
    <ImageBrush x:Name="panoramaBrush" ImageSource="../Images/cloudsPanorama.jpg" />

在我的全景中使用它,如:

<controls:Panorama x:Name="ViewPanorama" Visibility="Visible" Background="{StaticResource panoramaBrush}" OpacityMask="{StaticResource MyOpacityBrush}" />


但是,这会使整个页面变暗,包括显示的任何内容,就好像透明图像位于所有内容之上一样。这是我错过的一个技巧。也许可以将不透明度添加到网格?

您可以只设置用作背景图像的PNG图像的不透明度*

不需要额外的口罩等


*您可以在Paint.net中打开图像,然后编辑图层属性以调整不透明度。将背景图像的不透明度(以xaml为单位)设置为0.6。黑色或白色文本将是可读的。

在使用imageSource构建的笔刷中使用不透明遮罩
然后使用画笔作为全景控件的背景

非常感谢。真不敢相信事情竟如此简单。我早该想到的:)谢谢你的回复,马特。Lukas的答案更合适,因为您不需要在paint.net中执行任何操作。