2011-09-15 59 views
1

我正在使用C#代碼處理MVC 3.0應用程序。 我有一個與「產品」表相關的「顏色」表。 每個十六進制顏色(例如#FFFFFF)的值都保存在一個nvarchar字段「value」中。 在我的產品客戶端部分中,我爲特定產品的顏色提供了DropDownList。 所以我需要在下拉列表這些顏色從亮到暗... 任何幫助將不勝感激排序... :)使用C#對十六進制顏色進行排序#

+0

很多有用的信息在這裏:http://stackoverflow.com/questions/596216/formula-to-determine-brightness-of-rgb-color –

回答

2

您可以分析的十六進制代碼爲若干個,從中創建一種顏色,得到它的亮度:

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