C# WinForm修改Panel边框颜色

无法在属性面版里直接修改,可以在Paint事件里重画。

private   void  panel1_Paint( object  sender, PaintEventArgs e)
{
    ControlPaint.DrawBorder(e.Graphics,
                                 this .panel1.ClientRectangle,
                                Color.LightSeaGreen, // 7f9db9
                                 1 ,
                                ButtonBorderStyle.Solid,
                                Color.LightSeaGreen,
                                 1 ,
                                ButtonBorderStyle.Solid,
                                Color.LightSeaGreen,
                                 1 ,
                                ButtonBorderStyle.Solid,
                                Color.LightSeaGreen,
                                 1 ,
                                ButtonBorderStyle.Solid);
}

url: C# WinForm修改Panel边框颜色 - 大气象 - 博客园
附:C# RGB与16进制颜色转换方法

#region [颜色:16进制转成RGB]
        /// <summary>
        /// [颜色:16进制转成RGB]
        /// </summary>
        /// <param name="strColor">设置16进制颜色 [返回RGB]</param>
        /// <returns></returns>
        public static System.Drawing.Color colorHx16toRGB(string strHxColor)
        {
            try
            {
                if (strHxColor.Length == 0)
                {//如果为空
                    return System.Drawing.Color.FromA#000000;//设为黑色
                }
                else
                {//转换颜色
                    return System.Drawing.Color.FromArgb(System.Int32.Parse(strHxColor.Substring(1, 2), System.Globalization.NumberStyles.AllowHexSpecifier), System.Int32.Parse(strHxColor.Substring(3, 2), System.Globalization.NumberStyles.AllowHexSpecifier), System.Int32.Parse(strHxColor.Substring(5, 2), System.Globalization.NumberStyles.AllowHexSpecifier));
                }
            }
            catch
            {//设为黑色
                return System.Drawing.Color.FromA#000000;
            }
        }
        #endregion


#region [颜色:RGB转成16进制]
        /// <summary>
        /// [颜色:RGB转成16进制]
        /// </summary>
        /// <param name="R">红 int</param>
        /// <param name="G">绿 int</param>
        /// <param name="B">蓝 int</param>
        /// <returns></returns>
        public static string colorRGBtoHx16(int R, int G, int B)
        {
            return System.Drawing.ColorTranslator.ToHtml(System.Drawing.Color.FromArgb(R, G, B));
        }
        #endregion

又:

private string ToHexColor(Color color)
        {
            string R = Convert.ToString(color.R, 16);
            if (R == "0")
                R = "00";
            string G = Convert.ToString(color.G, 16);
            if (G == "0")
                G = "00";
            string B = Convert.ToString(color.B, 16);
            if (B == "0")
                B = "00";
            string HexColor = "#" + R + G + B;
            return HexColor;
        }

    public string ForeColor

    {

        set

        {

             //value = #ab364f

            int r = Convert.ToInt32("0x" + value.Substring(1, 2),16);

            int g = Convert.ToInt32("0x" + value.Substring(3, 2),16);

            int b = Convert.ToInt32("0x" + value.Substring(5, 2),16);

            txtUrl.ForeColor = System.Drawing.Color.FromArgb(r,g,b);

        }

 }

利用递增的数字返回循环渐变的颜色的js代码

function gCL(i){ 
var f=parseInt((i%15)/5); 
i=i%15%5; 
switch(f){ 
case 0:return "#"+cS2(255-i*51)+cS2(i*51)+"00"; 
case 1:return "#00"+cS2(255-i*51)+cS2(i*51); 
case 2:return "#"+cS2(i*51)+"00"+cS2(255-i*51); 


function cS2(i) { 
var s=i.toString(16); 
return ("00"+s).substr(s.length); 
}

使用gCL就可以利用递增的数字返回由红到绿到蓝的渐变颜色了。渐变效果如下,共15种颜色,循环渐变:

http://kingoa.net/WEBPROGRAM/JAVASCRIPT/2010/0326/14021.html

CSS颜色值的三种形式:名称、RGB、十六进制

从理论上说,CSS可以处理的颜色数量大概是:16,777,216。够用了吧。如何表现这些颜色呢,主要是通过三种形式:

1、名称 如:blue

2、RGB 如:255,0,0

3、十六进制 如:#ff6600

如果我们要设置红色,可以是下面的形式:

名称:red

RGB:#ff0000

RGB:rgb(100%,0%,0%)

十六进制:#ff0000

十六进制:#f00

CSS有十七个预先确定的颜色,它们是:

aqua, black, blue, fuchsia, gray, green, lime, maroon, navy, olive, orange, purple, red, silver, teal, white, yellow.

(注意:transparent 透明 也是一个正确的值。)

rgb的三个值都是从0到255,0是最低级,255是*,这些值同样可以是百分比。

十六进制三或六个数字长度前面带上#字符,三个长度是六个的压缩形式(短16进制),比如#00f是#0000ff的压缩,#c30是#cc3300。三位数很好理解,像rgb,第一个是红色,第二个是绿色,第三个蓝色。但六位数可以实现更多的颜色控制。

由于web安全色只使用了00,33,66,99,cc,ff,所以我们可以使用短16进制颜色表示web安全色,0,3,6,9,c,f和长16进制可以使用的颜色数值是等价的,一共是6×6×6=216种。最初的计算机(8位计算机)上只能定义256种颜色,所以当时Windows和Macintosh运行于256色,在Netscape Navigator和Microsoft Internet Explorer上共有的颜色就被称为Web安全色.如果颜色不在这216种颜色的范围内,计算机就有可能在显示颜色的时候产生抖动现象。(抖动就是由于操作系统为了尽可能的表现某种颜色,混合两种颜色而产生的)

上一篇:js 百度地图api


下一篇:C++: 基于四叉树数据结构的自适应网格(初探)