繁体   English   中英

窗口背景颜色:显得比指定的更暗?

[英]Window background color: appears darker than specified?

我正在尝试使用WPF中的颜色和表单的背景颜色。 没有做任何事情(没有代码,从另一个类派生等),我创建了一个全新的默认Windows窗体。 我将背景更改为浅蓝色。 保存表单。 运行该程序并打开该表单..表单显示在一些其他更深的颜色,如它甚至不尊重XAML

<Window x:Class="MyProjectNamespace.AnotherWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="AnotherWindow" Height="300" Width="300" Background="#4800A8A6">
    <Grid>

    </Grid>
</Window>

另外,如果我尝试使用#4800A8A6的相同背景值并尝试创建画笔并执行BrushConverter.ConvertFrom(“#4800A8A6”); 然后运行表单,我仍然得到设计师显示的不正确的颜色......是什么给...

颜色代码的第一个字节,'48'是一个alpha值,所以你允许在你的Window上进行alpha混合(不是“Windows Form”btw,这是一种不同的技术;)),这意味着你的颜色窗口将与其背后的东西的颜色混合。

尝试更改为: #FF00A8A6 ,看看是否能提供更好的结果。

您的问题是在背景颜色中包含Alpha通道 (即#AARRGGBB )。 在设计师中,你看到的背景是针对VS中的背景颜色(在我的情况下为白色)中进行合成,与单独运行时相比,它会“减轻”背景。

要自己查看,请尝试Background="#00A8A6" ,或者您可以尝试添加AllowsTransparency="True" (但这有一个繁琐的WindowStyle.None要求 )。

这可能是因为你的颜色中的alpha分量。 如果您尝试使窗口透明,则必须使用AllowsTransparency="True" 如果不这样做,WPF会将默认的窗口背景颜色与您的Windows背景合并。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM