Exemplo n.º 1
0
        /////<summary>设置预定义颜色</summary>
        //public void setColor(EMapType mtype,ECObjectType otype , string ctype, string cstatus, Color color)
        //{

        //    ECMapBackground enummap;
        //    if (mtype== EMapType.卫星 || mtype== EMapType.无)
        //        enummap= ECMapBackground.卫星和无底图;
        //    else
        //        enummap= ECMapBackground.道路和地形;

        //    setColor(enummap, otype, ctype, cstatus, color);
        //}

        ///<summary>设置预定义颜色</summary>
        public void setColor(ECMapBackground enummap, ECObjectType otype, string ctype, string cstatus, Color color)
        {
            Color oldcolor;

            SerializableDictionary <string, Color> dic;

            if (!colors.cs.Keys.Contains(enummap))
            {
                colors.cs.Add(enummap, new SerializableDictionary <ECObjectType, SerializableDictionary <string, SerializableDictionary <string, Color> > >());
            }
            if (!colors.cs[enummap].Keys.Contains(otype))
            {
                colors.cs[enummap].Add(otype, new SerializableDictionary <string, SerializableDictionary <string, Color> >());
            }
            if (!colors.cs[enummap][otype].TryGetValue(ctype, out dic))
            {
                dic = new SerializableDictionary <string, Color>();
                colors.cs[enummap][otype].Add(ctype, dic);
            }
            if (!dic.TryGetValue(cstatus, out oldcolor))
            {
                dic.Add(cstatus, color);
            }
            else
            {
                dic[cstatus] = color;
            }
        }
Exemplo n.º 2
0
        ///<summary>获取预定义的颜色</summary>
        public Color getColor(EMapType mtype, ECObjectType otype, string ctype, string cstatus)
        {
            Color color = Colors.Black;
            //if (string.IsNullOrWhiteSpace(ctype) || string.IsNullOrWhiteSpace(cstatus)) return color;

            SerializableDictionary <string, Color> dic;
            ECMapBackground enummap;

            if (mtype == EMapType.卫星 || mtype == EMapType.无)
            {
                enummap = ECMapBackground.卫星和无底图;
            }
            else
            {
                enummap = ECMapBackground.道路和地形;
            }

            if (colors.cs[enummap][otype].TryGetValue(ctype, out dic))
            {
                dic.TryGetValue(cstatus, out color);
            }
            return(color);
        }