将16进制值颜色转换为int类型

来源:互联网 发布:信达软件下载 编辑:程序博客网 时间:2024/06/12 20:02

//在reportControl中将记录的前景色修改为指定颜色

 ReportRecord record = axReportControl1.AddRecord();
           
            record[0].Value = ">>培训进修情况";
            record[0].Bold = true;
            record[0].ForeColor = (uint)HexToDecimal("FF0011");//ForeColor的类型为uint;转换指定颜色

 

//将FF0011 这种格式的颜色转换成int类型的值

  public static int HexToDecimal(string HexString)
        {
            char[] HexColor = HexString.ToCharArray();
            int DecimalColor = 0;
            int iLength = HexColor.Length - 1;
            int iDecimalNumber;

            foreach (char cHexValue in HexColor)
            {
                if (char.IsNumber(cHexValue))
                {
                    iDecimalNumber = int.Parse(cHexValue.ToString());
                }
                else
                {
                    iDecimalNumber = Convert.ToInt32(cHexValue) - 55;
                }

                DecimalColor += iDecimalNumber * (Convert.ToInt32(Math.Pow(16, iLength)));
                iLength--;
            }
            return DecimalColor;
        }

以上方法正在研究,供大家参考讨论.
原创粉丝点击