0

ASP.Netグリッドビューコントロールでyahoo静的マップを表示するにはどうすればよいですか?マップをロードするためのアドレスは、gridviewの列の1つに表示され、各行のアドレスに基づいて、静的マップを各行に表示する必要があります。

4

1 に答える 1

0

ASP.NetWebページに静的マップを表示するためのコードを完成させました。gridviewの行データバインドイベントでDisplayYStaticMapメソッドを呼び出し、gridviewでyahoo静的マップを表示することもできます。

public static string DisplayYStaticMap(string streetName、string CityName、string stateName、int imgWidth、int imgHeight、int Zoom){WebClient wc = new WebClient();

        StringBuilder strb = new StringBuilder();
        strb.Append("http://local.yahooapis.com/MapsService/V1/mapImage?Appid=YOURAPIID--&");
        if (streetName != "")
        {
            strb.Append("street=");
            strb.Append(streetName);
        }
        if (CityName != "")
        {
            strb.Append("&city=");
            strb.Append(CityName);
        }
        if (stateName != "")
        {
            strb.Append("&state=");
            strb.Append(stateName);
        }
        if (imgHeight != 0)
        {
            strb.Append("&image_height=");
            strb.Append(imgHeight);
        }
        if (imgWidth != 0)
        {
            strb.Append("&image_width=");
            strb.Append(imgWidth);
        }
        if (zoom != 0)
        {
            strb.Append("&zoom=");
            strb.Append(zoom);
        }
        string str = wc.DownloadString(strb.ToString());

        if (str.IndexOf("--&") != -1)
        {
            return str.Substring(str.IndexOf("http://gws.maps.yahoo.com"), str.IndexOf("--&"));
        }
        else
        {
            return str.Substring(str.IndexOf("http://gws.maps.yahoo.com"));
        }
    }
}

imgPhotos.Src = DisplayYStaticMap(ds.Tables [0] .Rows [0] ["PropertyAddress"]。ToString()。Substring(0、ds.Tables [0] .Rows [0] ["PropertyAddress"]。ToString( ).IndexOf( "、"))、ds.Tables [0] .Rows [0] ["PropertyCity"]。ToString()、ds.Tables [0] .Rows [0] ["PropertyState"]。ToString( )、150,90,8);

于 2010-10-09T08:02:13.650 に答える