Back to Devexpress

WmsLayer Class

windowsforms-devexpress-dot-xtramap-2ad27a80.md

latest4.3 KB
Original Source

WmsLayer Class

Provides information about a single layer obtained from a Web Map Service Provider.

Namespace : DevExpress.XtraMap

Assembly : DevExpress.XtraMap.v25.2.dll

NuGet Package : DevExpress.Win.Map

Declaration

csharp
public class WmsLayer :
    IWmsLayer
vb
Public Class WmsLayer
    Implements IWmsLayer

The following members return WmsLayer objects:

Remarks

Available layers are supplied to a Map control using the CapabilitiesRespondedEventArgs.Layers collection.

Example

This example demonstrates how to receive information from a Web Map Service using the WmsDataProvider.ResponseCapabilities event handler.

To do this, use the CapabilitiesRespondedEventArgs arguments of the event to specify a WMS active layer and obtain the required information.

csharp
using DevExpress.XtraMap;
using System.Windows.Forms;

namespace ResponseCapabilitiesHandler {
    public partial class Form1 : Form {
        ImageLayer WmsLayer {
            get { return (ImageLayer)mapControl.Layers["WmsImageLayer"]; }
        }
        WmsDataProvider Provider {
            get { return WmsLayer.DataProvider as WmsDataProvider; }
        }
        public Form1() {
            InitializeComponent();
        }
        private void Form1_Load(object sender, System.EventArgs e) {
            // Handle the ResponseCapabilities event.
            Provider.ResponseCapabilities += OnResponseCapabalities;
        }
        void OnResponseCapabalities(object sender, CapabilitiesRespondedEventArgs e) {
            // Specify an active layer for the map control.
            Provider.ActiveLayerName = e.Layers[0].Name;
            // Recieve information on the active layer.
            label1.Text = string.Format("Layer name: {0}, Layer title: {1}", e.Layers[0].Name, e.Layers[0].Title);           
        }
    }
}
vb
Imports DevExpress.XtraMap
Imports System.Windows.Forms

Namespace ResponseCapabilitiesHandler
    Partial Public Class Form1
        Inherits Form

        Private ReadOnly Property WmsLayer() As ImageLayer
            Get
                Return CType(mapControl.Layers("WmsImageLayer"), ImageLayer)
            End Get
        End Property
        Private ReadOnly Property Provider() As WmsDataProvider
            Get
                Return TryCast(WmsLayer.DataProvider, WmsDataProvider)
            End Get
        End Property
        Public Sub New()
            InitializeComponent()
        End Sub
        Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
            ' Handle the ResponseCapabilities event.
            AddHandler Provider.ResponseCapabilities, AddressOf OnResponseCapabalities
        End Sub
        Private Sub OnResponseCapabalities(ByVal sender As Object, ByVal e As CapabilitiesRespondedEventArgs)
            ' Specify an active layer for the map control.
            Provider.ActiveLayerName = e.Layers(0).Name
            ' Recieve information on the active layer.
            label1.Text = String.Format("Layer name: {0}, Layer title: {1}", e.Layers(0).Name, e.Layers(0).Title)
        End Sub
    End Class
End Namespace

Inheritance

Object WmsLayer

See Also

WmsLayer Members

DevExpress.XtraMap Namespace