コード例 #1
0
 private void capsRetrieveDone(object sender, Wms.Client.RetrieverDoneArgs ea)
 {
     // This event handler is called when the capabilities description has
     // been retrieved from the WMS server and parsed on the client side.
     if (ea.Reason == Wms.Client.RetrieverDoneArgs.CompletionReason.Completed)
     {
         if (ea.ContentType.Equals("application/vnd.ogc.wms_xml") ||
             ea.ContentType.Equals("text/xml"))
         {
             // Capabilities successfully retrieved from server.
             initiateMapRequest(ea.DestinationObject as Wms.Client.Server);
         }
         else if (ea.ContentType.Equals("application/vnd.ogc.se_xml") ||
                  ea.ContentType.Equals("application/vnd.ogc.se+xml"))
         {
             // WMS servers indicate WMS exceptions using the above content types.
             string msg = "The WMS server returned an exception."
                          + System.Environment.NewLine;
             System.Windows.Forms.MessageBox.Show(msg, "WMS Server Exception",
                                                  System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Error);
         }
         else
         {
             // If the content type is something unexpected, then it's likely that we
             // reached an HTML page, which can be displayed in Internet Explorer.
             string msg = "The WMS server returned an incorrect format of "
                          + ea.ContentType + "." + System.Environment.NewLine
                          + "This is not a valid format." + System.Environment.NewLine
                          + "Would you like to see if Internet Explorer can show you what was returned?";
             System.Windows.Forms.DialogResult yesNo = System.Windows.Forms.MessageBox.Show(msg, "Invalid WMS Format",
                                                                                            System.Windows.Forms.MessageBoxButtons.YesNo, System.Windows.Forms.MessageBoxIcon.Error);
             if (yesNo == System.Windows.Forms.DialogResult.Yes)
             {
                 invokeIe(ea.Retriever.Request.ToString());
             }
         }
     }
     else if (ea.Reason == Wms.Client.RetrieverDoneArgs.CompletionReason.TimedOut)
     {
         string msg = "Contacting WMS server timed out."
                      + System.Environment.NewLine;
         System.Windows.Forms.MessageBox.Show(msg, "WMS Server Contact Timed Out",
                                              System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Error);
     }
     else             // there was an error that we could not predict, most likely an http error.
     {
         string msg = "Error contacting WMS server: " + ea.Message
                      + System.Environment.NewLine;
         System.Windows.Forms.MessageBox.Show(msg, "Unable to contact WMS server",
                                              System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Error);
     }
 }
コード例 #2
0
 private void capsRetrieveDone(object sender, Wms.Client.RetrieverDoneArgs ea)
 {
     // This event handler is called when the capabilities description has
     // been retrieved from the WMS server and parsed on the client side.
     if (ea.Reason == Wms.Client.RetrieverDoneArgs.CompletionReason.Completed)
     {
         if (ea.ContentType.Equals("application/vnd.ogc.wms_xml") ||
             ea.ContentType.Equals("text/xml"))
         {
             // Capabilities successfully retrieved from server.
             initiateMapRequest(ea.DestinationObject as Wms.Client.Server);
         }
     }
 }
コード例 #3
0
        private void mapRetrieveDone(object sender, Wms.Client.RetrieverDoneArgs ea)
        {
            // This event handler is called when the map has been retrieved, or when an error
            // occurs in the retrieval.
            Wms.Client.MapRequestBuilder mapRequest = ea.Retriever.Request as Wms.Client.MapRequestBuilder;

            if (ea.Reason == Wms.Client.RetrieverDoneArgs.CompletionReason.Completed)
            {
                System.Drawing.Image image = System.Drawing.Image.FromFile(ea.DestinationFile);
                for (int i = 0; i < this.mapRequests.Length; i++)
                {
                    if (this.mapRequests[i] == mapRequest)
                    {
                        this.mapImages[i] = image;
                    }
                }
            }
        }
コード例 #4
0
        private void mapRetrieveDone(object sender, Wms.Client.RetrieverDoneArgs ea)
        {
            // This event handler is called when the map has been retrieved, or when an error
            // occurs in the retrieval.
            Wms.Client.MapRequestBuilder mapRequest = ea.Retriever.Request as Wms.Client.MapRequestBuilder;

            if (ea.Reason == Wms.Client.RetrieverDoneArgs.CompletionReason.Completed)
            {
                if (ea.ContentType.Equals("application/vnd.ogc.se_xml") ||
                    ea.ContentType.Equals("application/vnd.ogc.se+xml") ||
                    ea.ContentType.Equals("text/xml"))
                {
                    string msg = "Retrieval of map returned an error:" + System.Environment.NewLine;
                    System.Windows.Forms.MessageBox.Show(msg, "WMS Server Exception",
                                                         System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Error);
                }
                else
                {
                    System.Drawing.Image image = System.Drawing.Image.FromFile(ea.DestinationFile);
                    this.pictureBox.Image = image;
                    this.statusBar.Text   = System.String.Empty;
                }
            }
            else if (ea.Reason == Wms.Client.RetrieverDoneArgs.CompletionReason.Error)
            {
                System.Windows.Forms.MessageBox.Show("Error retrieving map: " + ea.Message,
                                                     "Retrieval error",
                                                     System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Error);
            }
            else if (ea.Reason == RetrieverDoneArgs.CompletionReason.TimedOut)
            {
                System.Windows.Forms.MessageBox.Show("Retrieval of map timed out.",
                                                     "Retrieval error",
                                                     System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Error);
            }
        }