• WPF:将HTML RGB颜色值转化为Color对象的两种方式


     (1)方式一:

     Color color1 = (Color)System.Windows.Media.ColorConverter.ConvertFromString("#E0E0E0");
    

    (2)方式二:

    Color color2 = ConvertToColor("#E0E0E0");
    

      

    public static System.Windows.Media.Color ConvertToColor(string value)
    {
           int r = 0, g = 0, b = 0;
           if (value.StartsWith("#"))
           {
                int v = Convert.ToInt32(value.Substring(1), 16);
                r = (v >> 16) & 255; g = (v >> 8) & 255; b = v & 255;
           }
    
           return System.Windows.Media.Color.FromRgb(Convert.ToByte(r), Convert.ToByte(g), Convert.ToByte(b));
    }
    记住:如果是将RGB(128,24,34)转换为十六进制,可以分别将数字转换为十六进制:
            public string toHex(int digit)
            {
                string hexDigit = digit.ToString("X");
                if (hexDigit.Length == 1)
                {
                    hexDigit = "0" + hexDigit;
                }
                return hexDigit;
            }
    

      然后拼接得到十六进制:

    string colorCode = "#" +toHex(Color.R) +toHex(Color.G) +toHex(Color.B);
    

      

    (3)方法三

            private static Color CreateColorFromString(string s)
            {
                if (string.Compare(s, "None") == 0)
                {
                    return Colors.Transparent;
                }
                s = s.Replace("#", "");
                byte result = 0;
                byte num2 = 0;
                byte num3 = 0;
                byte num4 = 0;
                byte.TryParse(s.Substring(0, 2), NumberStyles.HexNumber, (IFormatProvider)null, out result);
                byte.TryParse(s.Substring(2, 2), NumberStyles.HexNumber, (IFormatProvider)null, out num2);
                byte.TryParse(s.Substring(4, 2), NumberStyles.HexNumber, (IFormatProvider)null, out num3);
                byte.TryParse(s.Substring(6, 2), NumberStyles.HexNumber, (IFormatProvider)null, out num4);
                return System.Windows.Media.Color.FromArgb(result, num2, num3, num4);
            }

      

  • 相关阅读:
    Django基础
    XSS BOT编写
    Weblogic ssrf+Redis Getshell学习
    CORS与JSONP配置不当所导致的信息泄露
    VulnHub FristLeaks 1.3
    攻防世界--REVERSE新手练习区writeup
    2019第三届强网杯线下3道RW
    SCTF2019--WEB 2题复现
    文件上传--利用.htaccess绕过黑名单
    CEF 与 QML 对比
  • 原文地址:https://www.cnblogs.com/wangnmhb/p/4063442.html
Copyright © 2020-2023  润新知