using System;
using System.Web.UI;
using ThinkGeo.MapSuite.Core;
using ThinkGeo.MapSuite.WebEdition;
using System.Xml;
using System.Collections.ObjectModel;
public partial class Sample : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
Map1.MapUnit = GeographyUnit.DecimalDegree;
Map1.MapTools.Logo.Enabled = true;
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(MapPath("~/Data/StreetWMSLayers.xml"));
string srs = xmlDoc.SelectSingleNode("//SRS").InnerText;
TiledWmsLayer wmsLayer = new TiledWmsLayer();
wmsLayer.ServerUris.Add(new Uri("http://194.72.72.68:24572/CCS2WebMapServiceIGN/GetMap.ashx"));
wmsLayer.Open();
wmsLayer.Crs = srs;
XmlNodeList list = xmlDoc.SelectNodes("//Layer");
Collection rects = new Collection();
foreach (var item in wmsLayer.GetServerLayerNames())
{
wmsLayer.ActiveLayerNames.Add(item);
}
//foreach (XmlElement item in list)
//{
// wmsLayer.ActiveLayerNames.Add(item.ChildNodes[0].InnerText);
// wmsLayer.ActiveStyleNames.Add(item.ChildNodes[1].InnerText == "" ? "default" : item.ChildNodes[1].InnerText);
// XmlElement rectNode = (XmlElement)item.ChildNodes[2];
// RectangleShape extent = new RectangleShape(Convert.ToDouble(rectNode.Attributes["minx"].InnerText),
// Convert.ToDouble(rectNode.Attributes["maxy"].InnerText),
// Convert.ToDouble(rectNode.Attributes["maxx"].InnerText),
// Convert.ToDouble(rectNode.Attributes["miny"].InnerText));
// rects.Add(extent);
//}
//RectangleShape rect = rects[0];
//for (int i = 1; i < rects.Count; i++)
//{
// rect.ExpandToInclude(rects[i]);
//}
Map1.CurrentExtent = new RectangleShape(2.408901, 48.923393, 2.5683, 48.764183);
//Map1.CurrentExtent = rect;
LayerOverlay overlay = new LayerOverlay();
overlay.Layers.Add(wmsLayer);
Map1.CustomOverlays.Add(overlay);
}
}
}