在WPF中模糊背景

时间:2015-01-11 04:38:15

标签: c# .net wpf effects

我正在尝试在WPF中创建模糊效果,但我想模糊控件后面的内容(例如网格),我不打算模糊网格的内容。

我想做这样的事情。

enter image description here

3 个答案:

答案 0 :(得分:5)

如果你正在寻找这样的东西:

blur cherries

答案是使用BitmapEffect

<Image Source="http://www.pingminghealth.com/wp-content/uploads/2010/12/cherries.jpg" Stretch="UniformToFill">
    <Image.BitmapEffect>
        <BlurBitmapEffect Radius="20" />
    </Image.BitmapEffect>
</Image>

您可以在msdn上找到有关它的教程:How to Apply a Blur Effect to a Visual

答案 1 :(得分:1)

以防万一,有人还在2018年寻找解决方案,类似这样的方法对我有用:BlurryControls.BlurryUserControl.cs

答案 2 :(得分:-2)

<Rectangle>  
    <Rectangle.Effect>  
        <BlurEffect Radius="{DynamicResource BlurRadius}"/>  
    </Rectangle.Effect>  
    <Rectangle.Fill>  
        <VisualBrush  
ViewboxUnits="Absolute"  
Viewbox="{Binding RenderTransform.Children[3],  
        Converter={StaticResource TranslateTransformToRectViewboxVisualBrushConverter},  
        RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Grid}},  
        UpdateSourceTrigger=PropertyChanged}"  
        AlignmentX="Left" AlignmentY="Top"  
    Visual="{Binding ElementName=BackgroundContainer}" Stretch="None">  
            <VisualBrush.Transform>  
                <TranslateTransform X="0" />  
            </VisualBrush.Transform>  
        </VisualBrush>  
    </Rectangle.Fill>  
</Rectangle>