Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
WPF:如果在父项上使用dropshadow效果,为什么文本和元素会模糊_Wpf_Xaml_Blur_Dropshadow - Fatal编程技术网

WPF:如果在父项上使用dropshadow效果,为什么文本和元素会模糊

WPF:如果在父项上使用dropshadow效果,为什么文本和元素会模糊,wpf,xaml,blur,dropshadow,Wpf,Xaml,Blur,Dropshadow,如果向父元素添加DropShadowEffect,则子元素的文本将模糊。为什么? <Grid> <Grid.Effect> <DropShadowEffect /> </Grid.Effect> <Grid.ColumnDefinitions> <ColumnDefinition /> </Grid.ColumnDefinitions> &l

如果向父元素添加
DropShadowEffect
,则子元素的文本将模糊。为什么?

<Grid>
    <Grid.Effect>
        <DropShadowEffect />
    </Grid.Effect>
    <Grid.ColumnDefinitions>
        <ColumnDefinition />
    </Grid.ColumnDefinitions>
    <Grid.RowDefinitions>
        <RowDefinition />
    </Grid.RowDefinitions>
    <TextBlock Background="White">Test</TextBlock>
</Grid>

试验
更新:

有阴影

没有阴影


尝试将
文本选项。textformatingmode=“Display”
添加到文本块,如所示。

该效果可能会以某种方式增加“模糊度”,例如,将网格移动到像素的某些部分左右。

文本模糊的原因是,该效果会导致元素和所有子元素首先渲染到位图中。这意味着无法进行亚像素渲染(ClearType),因此文本质量较低

您可以通过仅将效果应用于可视树的一部分来解决此问题。不包含文本的部分

在您的情况下,您可能需要以下内容:

<Grid>
    <Border>
        <Border.Effect>
            <DropShadowEffect />
        </Border.Effect>
    </Border>
    <TextBlock Background="White">Test</TextBlock>
</Grid>

试验

亚像素可能有问题


尝试将
UseLayoutRounding=“True”
添加到网格中。

这不会发生在我身上,发布更多代码或屏幕快照我正在Mac上使用Windows XP,这可能是问题吗?好问题。我在VisualStudio2010Express工作。我在哪里可以找到WPF的版本?@Smolla应该是4,无论如何,请在上查看版本PresentationCore@Smolla在2010年也尝试过,与kaxaml测试相同,在我这方面测试没有任何改变:(尝试将其添加到文本块,而不是网格。这应该被标记为可接受的答案,因为它显然是正确的答案。我认为您可能需要将背景设置在边框上,而不是下面的文本块,以便显示阴影,因为如果边框没有可投射阴影的可视部分,它将不会显示。谢谢Patrick的回答,wh我接受了。抱歉耽搁了;)接受的答案不可能完全正确,因为在我的情况下(阴影直接在文本上,但效果应用于ContentProvider)在designer中没有问题,但在running应用程序中没有。这里有更多的内容。您也可以尝试
,这对我很有帮助。我尝试了这个方法,但根据屏幕上的位置,边框在不同方向上偏移了一个像素,可能是因为圆角。