Source Code WebEditionSample CustomizeZoomLevels CS.zip
using System;
using System.Configuration;
using ThinkGeo.MapSuite.Core;
using ThinkGeo.MapSuite.WebEdition;
namespace CustomZoomLevelSet
{
public partial class TestForm : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
Map1.MapBackground.BackgroundBrush = new GeoSolidBrush(GeoColor.FromHtml("#B3C6D4"));
Map1.CurrentExtent = new RectangleShape(-131.22, 55.05, -54.03, 16.91);
Map1.MapUnit = GeographyUnit.DecimalDegree;
WorldMapKitWmsWebOverlay worldMapKitOverlay = new WorldMapKitWmsWebOverlay();
Map1.CustomOverlays.Add(worldMapKitOverlay);
ShapeFileFeatureLayer USLayer = new ShapeFileFeatureLayer(MapPath("~/App_Data/states.shp"));
USLayer.ZoomLevelSet.CustomZoomLevels.Add(GeAreatZoomLevel(7500000, AreaStyles.Country1));
USLayer.ZoomLevelSet.CustomZoomLevels.Add(GeAreatZoomLevel(300000, AreaStyles.CreateSimpleAreaStyle(GeoColor.StandardColors.LightBlue, GeoColor.SimpleColors.PaleGreen)));
USLayer.ZoomLevelSet.CustomZoomLevels.Add(GeAreatZoomLevel(50000, AreaStyles.County1));
LayerOverlay staticOverlay = new LayerOverlay();
staticOverlay.IsBaseOverlay = false;
staticOverlay.Layers.Add(USLayer);
Map1.CustomOverlays.Add(staticOverlay);
Map1.ZoomLevelSet = GetCustomZoomLevelSet();
}
}
private ZoomLevelSet GetCustomZoomLevelSet()
{
ZoomLevelSet zoomLevelSet = new ZoomLevelSet();
zoomLevelSet.CustomZoomLevels.Add(new ZoomLevel(62500000));
zoomLevelSet.CustomZoomLevels.Add(new ZoomLevel(30000000));
zoomLevelSet.CustomZoomLevels.Add(new ZoomLevel(15000000));
zoomLevelSet.CustomZoomLevels.Add(new ZoomLevel(7500000));
zoomLevelSet.CustomZoomLevels.Add(new ZoomLevel(3000000));
zoomLevelSet.CustomZoomLevels.Add(new ZoomLevel(1500000));
zoomLevelSet.CustomZoomLevels.Add(new ZoomLevel(700000));
return zoomLevelSet;
}
private ZoomLevel GeAreatZoomLevel(double scale, AreaStyle areaStyle)
{
ZoomLevel zoomLevel = new ZoomLevel(scale);
zoomLevel.DefaultAreaStyle = areaStyle;
return zoomLevel;
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace CenterMapBasedOnLatLong.UC
{
public partial class Footer : System.Web.UI.UserControl
{
protected void Page_Load(object sender, EventArgs e)
{
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace CenterMapBasedOnLatLong.UC
{
public partial class Header : System.Web.UI.UserControl
{
protected void Page_Load(object sender, EventArgs e)
{
}
}
}
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="TestForm.aspx.cs" Inherits="CustomZoomLevelSet.TestForm" %>
<%@ Register Assembly="WebEdition" Namespace="ThinkGeo.MapSuite.WebEdition" TagPrefix="cc1" %>
<%@ Register Src="UC/Footer.ascx" TagName="Footer" TagPrefix="uc1" %>
<%@ Register Src="UC/Header.ascx" TagName="Header" TagPrefix="uc2" %>
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<link href="~/theme/default/samplepic/style.css" rel="stylesheet" type="text/css" />
<link href="Theme/css.css" rel="stylesheet" type="text/css" />
<title>WebCodeCommunityTemplete</title>
</head>
<body>
<form id="form1" runat="server">
<table border="0px" width="100%" cellpadding="0px" cellspacing="0px" style="height: 100%;">
<tr>
<td style="height: 82px;">
<uc2:Header ID="Header1" runat="server" />
</td>
</tr>
<tr>
<td style="height: 100%; border-top: solid 1px #ece9d8;">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<cc1:Map ID="Map1" runat="server" Height="100%" Width="100%">
</cc1:Map>
</td>
</tr>
<tr>
<td style="height: 50px; border-top: outset 0px #666666; background-color: #ece9d8;">
<uc1:Footer ID="Footer1" runat="server" />
</td>
</tr>
</table>
</form>
</body>
</html>