使用 C# 对十六进制颜色进行排序

发布于 2024-12-04 13:08:22 字数 197 浏览 3 评论 0原文

我正在使用 C# 代码开发 MVC 3.0 应用程序。 我有一个与“产品”表相关的“颜色”表。 每种颜色的十六进制值(例如#FFFFFF)保存在 nvarchar 字段“value”中。 在我的产品客户端部分,我有一个用于特定产品颜色的 DropDownList。 所以我需要将 dropDownList 中的这些颜色从浅到深排序...... 任何帮助将不胜感激...:)

Im working on an MVC 3.0 application using C# code.
I have a "Color" table related to "Products" table.
The value of each color which is hexadecimal (for example #FFFFFF) is saved in a nvarchar field "value".
In my products client section, I have a DropDownList for colors of a specific product.
So I need to sort these colors in the dropDownList from lighter to darker...
Any help will be appreciated... :)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

梦里人 2024-12-11 13:08:22

您可以将十六进制代码解析为数字,从中创建颜色并获取其亮度:

.OrderBy(c => Color.FromArgb(Convert.ToInt32(c.Substring(1), 16)).GetBrightness())

You can parse the hex code into a number, create a color from it, and get its brightness:

.OrderBy(c => Color.FromArgb(Convert.ToInt32(c.Substring(1), 16)).GetBrightness())
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文