wpf弹出阴影不显示

时间:2017-05-03 14:56:28

标签: wpf popup shadow

我想在项目中为弹出窗口设置阴影。但是当我运行它时,阴影不会出现。 我写了这段代码:

    <Popup x:Name="popup" IsOpen="False"   Width="200" Height="200" Placement="AbsolutePoint" AllowsTransparency="True" PopupAnimation="Fade"   >
        <Grid>
            <Border  BorderThickness="1" Background="#FF4CAAC7" CornerRadius="6" >
                <Border.Effect>
                    <DropShadowEffect BlurRadius="15" Opacity="0.8"  ShadowDepth="10" Direction="-90" RenderingBias="Quality" />
                </Border.Effect>
                <StackPanel Orientation="Horizontal">
                    <Grid Width="200" Background="Transparent">
                        <Grid.RowDefinitions>
                            <RowDefinition Height="Auto"/>
                            <RowDefinition Height="Auto" />
                        </Grid.RowDefinitions>
                        <TextBlock Grid.Row="0" FontWeight="Bold" TextAlignment="Right" Margin="10">Operation was successful</TextBlock>
                    </Grid>
                </StackPanel>
            </Border>
        </Grid>
    </Popup>

在设计阴影show.in运行不显示。什么是问题?!!

1 个答案:

答案 0 :(得分:8)

投影在Popup的内边缘处被切断。通过为边框提供足够的余量为其周围的阴影创造空间,为Popup腾出更多空间。

<Border 
    BorderThickness="1" 
    Background="#FF4CAAC7" 
    CornerRadius="6" 
    Margin="0,0,15,15"
    >