User Tools

Site Tools


source_code_serviceseditionsample_serializetoxmlsample_cs_111213.zip

Source Code ServicesEditionSample SerializeToXmlSample CS 111213.zip

Banner.cs

 using System;  
 using System.Diagnostics;  
 using System.IO;  
 using System.Management;  
 using System.Windows.Forms;  
 
 public partial class Banner : UserControl  
 {  
     public Banner()  
     {  
         InitializeComponent();  
         SetupBannerAd();  
     }  
 
     public void SetupBannerAd()  
     {  
         if (Process.GetCurrentProcess().ProcessName != "devenv")  
         {  
             adRotator.Url = new Uri(new DirectoryInfo(@"..\..\Resources\bannerad_offline.html").FullName);  
             if (IsNetworkAlive())  
             {  
                 adsRotatorTimer.Start();  
             }  
         }  
     }  
 
     private static bool IsNetworkAlive()  
     {  
         ObjectQuery objectQuery = new ObjectQuery("select * from Win32_NetworkAdapter where NetConnectionStatus=2");  
         ManagementObjectSearcher searcher = null;  
         try  
         {  
             searcher = new ManagementObjectSearcher(objectQuery);  
 
             return (searcher.Get().Count > 0);  
         }  
         finally  
         {  
             if (searcher != null)  
             {  
                 searcher.Dispose();  
             }  
         }  
     }  
 
     private void adsRotatorTimer_Tick(object sender, EventArgs e)  
     {  
         adRotator.Navigate("http://gis.thinkgeo.com/Default.aspx?tabid=640&random=" + Guid.NewGuid().ToString());  
     }  
 }  
 

Footer.cs

 using System;  
 using System.Diagnostics;  
 using System.Windows.Forms;  
 using SerializeToXmlSample.Properties;  
 
 public partial class Footer : UserControl  
 {  
     public Footer()  
     {  
         InitializeComponent();  
     }  
 
     private void btnProductInformation_Click(object sender, EventArgs e)  
     {  
         Process.Start("http://gis.thinkgeo.com/Products/GISComponentsforNETDevelopers/MapSuiteServicesEdition/tabid/628/Default.aspx");  
     }  
 
     private void btnProductInformation_Activate(object sender, EventArgs e)  
     {  
         btnProductInformation.Image = Resources.btn_active_map_suite_products;  
     }  
 
     private void btnProductInformation_Deactivate(object sender, EventArgs e)  
     {  
         btnProductInformation.Image = Resources.btn_inactive_map_suite_products;  
     }  
 
     private void btnSupportCenter_Click(object sender, EventArgs e)  
     {  
         Process.Start("http://gis.thinkgeo.com/supportcenter");  
     }  
 
     private void btnSupportCenter_Activate(object sender, EventArgs e)  
     {  
         btnSupportCenter.Image = Resources.btn_active_support_center;  
     }  
 
     private void btnSupportCenter_Deactivate(object sender, EventArgs e)  
     {  
         btnSupportCenter.Image = Resources.btn_inactive_support_center;  
     }  
 
     private void btnDiscussForum_Click(object sender, EventArgs e)  
     {  
         Process.Start("http://gis.thinkgeo.com/Support/DiscussionForums/tabid/143/afv/topicsview/aff/11/Default.aspx");  
     }  
 
     private void btnDiscussForum_Activate(object sender, EventArgs e)  
     {  
         btnDiscussForum.Image = Resources.btn_active_discussion_forums;  
     }  
 
     private void btnDiscussForum_Deactivate(object sender, EventArgs e)  
     {  
         btnDiscussForum.Image = Resources.btn_inactive_discussion_forums;  
     }  
 
     private void btnWiki_Click(object sender, EventArgs e)  
     {  
         Process.Start("http://wiki.thinkgeo.com/wiki/Map_Suite_Services_Edition");  
     }  
 
     private void btnWiki_Activate(object sender, EventArgs e)  
     {  
         btnWiki.Image = Resources.btn_active_thinkgeo_wiki;  
     }  
 
     private void btnWiki_Deactivate(object sender, EventArgs e)  
     {  
         btnWiki.Image = Resources.btn_inactive_thinkgeo_wiki;  
     }  
 
     private void btnContactUs_Click(object sender, EventArgs e)  
     {  
         Process.Start("http://gis.thinkgeo.com/Default.aspx?tabid=147");  
     }  
 
     private void btnContactUs_Activate(object sender, EventArgs e)  
     {  
         btnContactUs.Image = Resources.btn_active_contact_us;  
     }  
 
     private void btnContactUs_Deactivate(object sender, EventArgs e)  
     {  
         btnContactUs.Image = Resources.btn_inactive_contact_us;  
     }  
 }  
 

Program.cs

 using System;  
 using System.Windows.Forms;  
 
 static class Program  
 {  
     /// <summary>  
     /// The main entry point for the application.  
     /// </summary>  
     [STAThread]  
     static void Main()  
     {  
         Application.EnableVisualStyles();  
         Application.SetCompatibleTextRenderingDefault(false);  
         Application.Run(new Sample());  
     }  
 }

Sample.cs

 using System;  
 using System.Drawing;  
 using System.Windows.Forms;  
 using ThinkGeo.MapSuite.Core;  
 
 public partial class Sample : Form  
 {  
     private MapEngine mapEngine;  
     private Bitmap bitmap;  
     private RectangleShape boundingBox;  
 
     public Sample()  
     {  
         InitializeComponent();  
     }  
 
     private void SerializeALayer_Load(object sender, EventArgs e)  
     {  
         bitmap = new Bitmap(map.Width, map.Height);  
         mapEngine = new MapEngine();  
 
         mapEngine.ShowLogo = true;  
         mapEngine.BackgroundFillBrush = new GeoSolidBrush(GeoColor.GeographicColors.ShallowOcean);  
 
         ShapeFileFeatureLayer shapeFileFeatureLayer = new ShapeFileFeatureLayer("Data
Countries02.shp");  
         shapeFileFeatureLayer.ZoomLevelSet.ZoomLevel01.ApplyUntilZoomLevel = ApplyUntilZoomLevel.Level20;  
         shapeFileFeatureLayer.ZoomLevelSet.ZoomLevel01.DefaultAreaStyle = AreaStyles.Country1;  
         shapeFileFeatureLayer.Open();  
         boundingBox = shapeFileFeatureLayer.GetBoundingBox();  
         shapeFileFeatureLayer.Close();  
 
         mapEngine.StaticLayers.Add(shapeFileFeatureLayer);  
 
         mapEngine.CurrentExtent = boundingBox;  
 
         DrawImage();  
     }  
 
     private void DrawImage()  
     {  
         mapEngine.OpenAllLayers();  
         mapEngine.DrawStaticLayers(bitmap, GeographyUnit.DecimalDegree);  
         mapEngine.CloseAllLayers();  
 
         map.Image = bitmap;  
     }  
 
     private void ToolBar_ButtonClick(object sender, ToolBarButtonClickEventArgs e)  
     {  
         switch (e.Button.Tag.ToString())  
         {  
             case "Zoom In":  
                 mapEngine.CurrentExtent.ScaleDown(50);  
                 break;  
             case "Zoom Out":  
                 mapEngine.CurrentExtent.ScaleUp(50);  
                 break;  
             case "Full Extent":  
                 mapEngine.CurrentExtent = boundingBox;  
                 break;  
             case "Pan Left":  
                 mapEngine.CurrentExtent = ExtentHelper.Pan(mapEngine.CurrentExtent, PanDirection.Left, 20);  
                 break;  
             case "Pan Right":  
                 mapEngine.CurrentExtent = ExtentHelper.Pan(mapEngine.CurrentExtent, PanDirection.Right, 20);  
                 break;  
             case "Pan Up":  
                 mapEngine.CurrentExtent = ExtentHelper.Pan(mapEngine.CurrentExtent, PanDirection.Up, 20);  
                 break;  
             case "Pan Down":  
                 mapEngine.CurrentExtent = ExtentHelper.Pan(mapEngine.CurrentExtent, PanDirection.Down, 20);  
                 break;  
             default:  
                 break;  
         }  
         DrawImage();  
     }  
 
     private void map_ClientSizeChanged(object sender, EventArgs e)  
     {  
         if (map.Width > bitmap.Width || map.Height > bitmap.Height)  
         {  
             bitmap = new Bitmap(map.Width, map.Height);  
             double scale = new ZoomLevelSet().GetZoomLevel(mapEngine.CurrentExtent, map.Width, GeographyUnit.DecimalDegree).Scale;  
             mapEngine.CurrentExtent = ExtentHelper.SnapToZoomLevel((RectangleShape)mapEngine.CurrentExtent.CloneDeep(), GeographyUnit.DecimalDegree, map.Width, map.Height, new ZoomLevelSet());  
             mapEngine.CurrentExtent = ExtentHelper.ZoomToScale(scale, mapEngine.CurrentExtent, GeographyUnit.DecimalDegree, map.Width, map.Height);  
             DrawImage();  
         }  
     }  
 
     private void btnSerialize_Click(object sender, EventArgs e)  
     {  
         if (mapEngine.StaticLayers.Count == 1)  
         {  
             Layer layerToSerialize = mapEngine.StaticLayers[0];  
 
             GeoSerializer serializer = new GeoSerializer();  
             string result = serializer.Serialize(layerToSerialize);  
             serializationResultTextBox.Text = result;  
 
             mapEngine.StaticLayers.Remove(layerToSerialize);  
             DrawImage();  
         }  
     }  
 
     private void btnDeserialize_Click(object sender, EventArgs e)  
     {  
         if (!String.IsNullOrEmpty(serializationResultTextBox.Text))  
         {  
             GeoSerializer serializer = new GeoSerializer();  
             Layer deserializedLayer = serializer.Deserialize(serializationResultTextBox.Text) as Layer;  
 
             if (deserializedLayer != null)  
             {  
                 serializationResultTextBox.Text = string.Empty;  
 
                 mapEngine.StaticLayers.Add(deserializedLayer);  
                 DrawImage();  
             }  
         }  
     }  
 }  
 
 
source_code_serviceseditionsample_serializetoxmlsample_cs_111213.zip.txt · Last modified: 2015/09/08 05:18 by admin