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