Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.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 TextBlock笔刷颜色不正确_Wpf_Opacity_Alpha_Textblock_Brush - Fatal编程技术网

Wpf TextBlock笔刷颜色不正确

Wpf TextBlock笔刷颜色不正确,wpf,opacity,alpha,textblock,brush,Wpf,Opacity,Alpha,Textblock,Brush,我有一个文本块和一个矩形,都位于一个空的WPF4窗口中。TextBlock的前景和矩形的填充都设置为SolidColorBrush,值为#80800000 这就是它看起来的样子: 矩形的颜色是正确的(50%透明的栗色),但TextBlock显示的是平灰色。发生什么事了 编辑:以下是XAML: <Window x:Class="WpfApplication1.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006

我有一个文本块和一个矩形,都位于一个空的WPF4窗口中。TextBlock的前景和矩形的填充都设置为SolidColorBrush,值为#80800000

这就是它看起来的样子:

矩形的颜色是正确的(50%透明的栗色),但TextBlock显示的是平灰色。发生什么事了

编辑:以下是XAML:

<Window x:Class="WpfApplication1.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525">
    <Grid>
        <TextBlock Foreground="#80800000" Height="100" HorizontalAlignment="Left" Margin="47,39,0,0" Text="TextBlock" VerticalAlignment="Top" Width="266" FontFamily="Arial" FontWeight="Bold" FontSize="56" />
        <Rectangle Fill="#80800000" Height="100" HorizontalAlignment="Left" Margin="71,174,0,0" Stroke="{x:Null}" VerticalAlignment="Top" Width="200" />
    </Grid>
</Window>

这与窗口顶部的其他图标有关吗? 这是我所期望的代码


或者您的代码隐藏中是否有其他不透明度设置?

感谢您发布图片。请您编辑这个问题,将XAML也包括在内,好吗?确实很有趣,看起来相同的不透明度值对视觉效果的影响不同,实验上您需要将不透明度设置为0.7左右,以便textblock具有相同的颜色rectangle@AndrewShepherd添加了XAML。其实没什么。我把你的代码复制粘贴到了VisualStudio中。有趣的是,当我用鼠标滚轮放大和缩小时,文本块的颜色会发生变化。当我缩小(使其变小)时,文本块变为灰色。当我放大时,它会变成红色,与块的颜色匹配。@AndrewShepherd是的,我也看到了。当它达到200%时,正确的颜色就会显示出来。这很奇怪,我在不同的机器上编译并运行了相同的项目(HP Elitebook 2760p),它工作正常(看起来像你的屏幕截图)。但是文本块在我的桌面工作站上仍然显示为灰色。当我在我的窗口中将“AllowTransparency”设置为True,将“WindowsStyle”设置为None时,文本块在两台计算机上都以正确的颜色显示。