2012-11-07 95 views
2

我需要为我的gridview中的每个项目生成随机颜色。我的要求是我必须在这些颜色之间生成这些颜色,例如,一个蓝色阴影和另一个蓝色阴影。即所有颜色必须在该范围内。我有一个开始颜色和结束颜色,我有一个随机的对象来生成字节。如何确保生成的颜色保持在给定的范围内?我需要在C#中写下Windows 8。它在Windows.UI.Color中显示的唯一颜色生成选项是FromArgb方法。关于如何实现这一点的任何想法?生成特定颜色的随机颜色

+0

颜色是线性的吗?红色和蓝色组件会保持不变吗? – Jodrell

+0

http://mattgemmell.com/2008/12/08/what-have-you-tried/ – Jodrell

+0

是的。开始和结束颜色将始终在两个阴影之间,例如蓝色或两个红色阴影之间。 – Harsha

回答

6
Random random = new Random(); 
byte randomNumber = (byte) random.Next(20, 256); 
Color blueish = Color.FromRgb(20, 20, randomNumber); 

应该给你一个青色的颜色20和255具有固定的红色和绿色价值的

+0

谢谢!根据我所寻找的内容。效果很好! :) – Harsha

2

好吧,给你有限的例子之间,

static Color RandomBlue(byte minBlue, byte maxBlue, byte red, byte green) 
{ 
    var blue = Random.Next(minBlue, maxBlue); 
    return Color.FromArgb(red, green, blue); 
} 

会产生内的一个Color或随机蓝色范围。