Example #1
0
    //本函数为谷歌地图
    public int fillbranchmap(GMap GMap1, DataTable dt, ref string continue2class, ref string supplierlistcontentikang, ref string supplierlistcontentciming, ref string supplierlistcontentmeinian)
    {
        GMap1.reset();

        GMap1.Add(new GControl(GControl.preBuilt.GOverviewMapControl));
        GMap1.Add(new GControl(GControl.preBuilt.LargeMapControl));

        GIcon baseIcon = new GIcon();

        baseIcon.shadow           = "http://www.google.cn/mapfiles/shadow50.png";
        baseIcon.iconSize         = new GSize(20, 34);
        baseIcon.shadowSize       = new GSize(37, 34);
        baseIcon.iconAnchor       = new GPoint(9, 34);
        baseIcon.infoWindowAnchor = new GPoint(9, 2);

        GIcon       letteredIcon;
        GMarker     marker;
        GInfoWindow window;
        double      lat, lng, clat = 0.0, clng = 0.0;
        int         index = 0;
        string      letter, lilist = "", ballooncontent;

        supplierlistcontentikang   = "";
        supplierlistcontentciming  = "";
        supplierlistcontentmeinian = "";
        int itemik = 0, itemcm = 0, itemmn = 0;

        foreach (DataRow dr in dt.Rows)
        {
            letter             = ((char)((int)'A' + index++)).ToString();
            letteredIcon       = new GIcon(baseIcon);
            letteredIcon.image = "http://www.google.cn/mapfiles/marker" + letter + ".png";

            lat    = Convert.ToDouble(dr["lat"]);
            lng    = Convert.ToDouble(dr["lng"]);
            clat  += lat;
            clng  += lng;
            marker = new GMarker(new GLatLng(lat, lng), letteredIcon);

            string sgm = "http://ditu.google.cn/maps?q=" + Server.UrlEncode(Server.UrlEncode(dr["branch"].ToString())) + "&hl=zh-CN&ie=UTF8"
                         + "&ll=" + lat + "," + lng + "&hq=" + Server.UrlEncode(Server.UrlEncode(dr["address"].ToString())) + "&z=15";

            //string sgm = "http://ditu.google.cn/maps?q=" + dr["branch"].ToString() + "&hl=zh-CN&ie=UTF8"
            //+ "&ll=" + lat + "," + lng + "&hq=" + dr["address"].ToString() + "&z=15";

            ballooncontent = "<center><b>" + dr["supplier"].ToString() + "</b><br />"
                             + "<A href='javascript:void(window.open(\"" + sgm + "\",\"_blank\"));'>" + dr["branch"].ToString() + "</A><br />"
                             + "</center>";
            window = new GInfoWindow(marker, ballooncontent, false);
            GMap1.Add(window);

            if (dt.Rows.Count == 1)
            {
                continue2class = "";
                lilist         = fillsupplierlist(index, letteredIcon.image, dr["supplier"].ToString(), dr["branch"].ToString(), dr["address"].ToString(), dr["id"].ToString(), true) + "\n\n";
            }
            else
            {
                lilist = fillsupplierlist(index, letteredIcon.image, dr["supplier"].ToString(), dr["branch"].ToString(), dr["address"].ToString(), dr["id"].ToString(), false) + "\n\n";
            }

            if (dr["supplier"].ToString() == "爱康国宾")
            {
                supplierlistcontentikang += lilist;
                itemik++;
            }
            else if (dr["supplier"].ToString() == "美年大健康")
            {
                supplierlistcontentmeinian += lilist;
                itemmn++;
            }
            else //if (dr["supplier"].ToString() == "慈铭体检")
            {
                supplierlistcontentciming += lilist;
                itemcm++;
            }
        }


        clat /= dt.Rows.Count;
        clng /= dt.Rows.Count;
        GMap1.enableHookMouseWheelToZoom = true;
        GMap1.setCenter(new GLatLng(clat, clng), 12);

        int itemmax = Math.Max(itemik, Math.Max(itemmn, itemcm));

        return(itemmax);
    }