首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >奇怪的颜色代码?转换为黑?

奇怪的颜色代码?转换为黑?
EN

Stack Overflow用户
提问于 2017-08-02 06:25:24
回答 3查看 165关注 0票数 0

我目前正在制作一个基于web的简化工具,我们正在使用我们的ERP。从我们的ERP中,我们可以为订单的状态指定颜色。我在数据库中做了一个新的表来存储这个颜色代码。在代码中,我检查statusID和颜色。然后,我试图添加这个颜色代码作为背景颜色。然而,我从ERP中得到的颜色代码不是十六进制代码吗?也许有人可以告诉我,如何以及是否有可能将这些代码转换成十六进制?

在这里,我选择颜色:

当我为颜色代码添加一个断点时:

编辑:还有,有人能告诉我这是什么颜色代码吗?会让谷歌变得更容易。打印屏幕上的颜色代码是"16777088“。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2017-08-02 07:02:18

我在网上找到了这个修复方法:

代码语言:javascript
复制
 int x = int.Parse(ProdBOOStatusBarColor);
            string colorHex = x.ToString("X6");
            StringBuilder color = new StringBuilder();
            color.Append("#");
            color.Append(colorHex.Substring(4, 2));
            color.Append(colorHex.Substring(2, 2));
            color.Append(colorHex.Substring(0, 2));
            color.ToString();

这似乎是出于某种原因,也许这里的人可以解释一下这些子子在那里做什么?

票数 1
EN

Stack Overflow用户

发布于 2017-08-02 07:13:35

您可能不会尝试使用System.Drawing.Color,它包含了FromArgbToHex方法。

所以你的解决方案可能是这样的

代码语言:javascript
复制
var hex = System.Drawing.Color.FromArgb(int.Parse(ProdBOOStatusBarColor)).ToHex();

另一种方法是解析使用字符串函数ToString插值串 (或其他字符串连接函数,如string.Formatstring.Concat、.)。示例:

代码语言:javascript
复制
var hex2 = $"#{int.Parse(ProdBOOStatusBarColor):X}";
票数 1
EN

Stack Overflow用户

发布于 2017-08-02 06:35:30

16777088是十进制颜色,所以您需要转换为HEX (在您的例子中是FFFF80)。这个颜色是浅黄色的。您可以使用W3School页面检查颜色。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45452974

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档