<esri:WmsLayer ID="AGSWMSLayer" Url="http://serverapps.esri.com/ArcGIS/services/California/MapServer/WMSServer" Initialized="WmsLayer_Initialized"/>
Private Sub WmsLayer_Initialized(ByVal sender As System.Object, ByVal e As System.EventArgs) Dim myWmsLayer As ESRI.ArcGIS.Client.Toolkit.DataSources.WmsLayer myWmsLayer = TryCast(MyMap.Layers("AGSWMSLayer"), ESRI.ArcGIS.Client.Toolkit.DataSources.WmsLayer) ' You can control the visibility of which WMS layers are displayed by adding the ' sub-LayerID's to the String Array. Dim myVisibleWmsLayers() As String = {"0", "1", "2", "3", "4", "5", "6", "7", "8"} myWmsLayer.Layers = myVisibleWmsLayers End Sub
Dim myWmsLayer As ESRI.ArcGIS.Client.Toolkit.DataSources.WmsLayer
<esri:ArcGISDynamicMapServiceLayer ID="MyLOGISLayer"
Url="http://gis.logis.org/arcgis/rest/services/SOMESERVER/MapServer/0"/>
<esri:ArcGISDynamicMapServiceLayer ID="MyLOGISLayer" Url="http://gis.logis.org/arcgis/rest/services/SomeServer/MapServer" Initialized="LOGIS_Initialized"/>
Private Sub LOGIS_Initialized(ByVal sender As System.Object, ByVal e As System.EventArgs) ' The myArcGISDynamicMapServiceLayer (an ArcGISDynamicServiceLayer object) and TextBlock_VisibleLayers ' (a TextBlock object) were defined previously in the XAML or code-behind. ' Get the first layer in the LayerInfo collection. Dim myArcGISDynamicMapServiceLayer As ESRI.ArcGIS.Client.ArcGISDynamicMapServiceLayer = MyMap.Layers.Item(0) ' VisibleLayers (Read/Write) ' ========================== ' In this example there are three sub-layers (0, 1, 2) that are turned on by default for the ' myArcGISDynamicMapServiceLayer. ' Uncomment the next two lines of code to set only the 2nd and 3rd sub-layers to be visible. Dim myVisibleLayers2() As Integer = {1} myArcGISDynamicMapServiceLayer.VisibleLayers = myVisibleLayers2 ' Display which sub-layers (via their index number) are visible in a TextBlock. Dim myVisibleLayers() As Integer = myArcGISDynamicMapServiceLayer.VisibleLayers If myVisibleLayers IsNot Nothing Then Dim myVisibleLayersText As String = "Number VisibleLayers: " + myVisibleLayers.Length.ToString Dim myVisibleLayersText2 As String = "" Dim I2 As Integer For I2 = 0 To myVisibleLayers.Length - 1 myVisibleLayersText2 = myVisibleLayersText2 + " " + myVisibleLayers(I2).ToString Next TextBlock_VisibleLayers.Text = myVisibleLayersText + ". VisibleLayers ID's: " + myVisibleLayersText2 Else TextBlock_VisibleLayers.Text = "[VisibleLayers not set - Meaning all layers are visible.]" End If End Sub
<!-- LAYER LIST --> <Grid> <Border Background="#996495ED" BorderThickness="1" CornerRadius="5" HorizontalAlignment="right" VerticalAlignment="bottom" Margin="10,10,10,10" Padding="5" BorderBrush="red" > <ListBox x:Name="MyList" ItemsSource="{Binding ElementName=MyMap, Path=Layers}"> <ListBox.ItemTemplate> <DataTemplate> <StackPanel Orientation="Horizontal"> <!--Layer visibility checkbox--> <CheckBox IsChecked="{Binding Visible, Mode=TwoWay}" /> <!--Opacity slider--> <Slider Margin="-5,0,0,0" Minimum="0" Maximum="1" Width="30" Value="{Binding Opacity, Mode=TwoWay}" Height="18" /> <!--Layer name--> <TextBlock Text="{Binding ID, Mode=OneWay}" Margin="5,0,0,0" > <!-- Tooltip on hover--> <ToolTipService.ToolTip> <StackPanel MaxWidth="400"> <!-- <TextBlock FontWeight="Bold" Text="{Binding CopyrightText}" TextWrapping="Wrap" /> <TextBlock Text="{Binding Description}" TextWrapping="Wrap" /> --> <TextBlock FontWeight="Bold" Text="HUH" TextWrapping="Wrap" /> <TextBlock Text="WOW" TextWrapping="Wrap" /> </StackPanel> </ToolTipService.ToolTip> </TextBlock> </StackPanel> </DataTemplate> </ListBox.ItemTemplate> </ListBox> </Border> </Grid>
MyArcGISDynamicMapServiceLayer.VisibleLayers = New Integer() {1, 2}
TextBlock_VisibleLayers.Text = myVisibleLayersText + ". VisibleLayers ID's: " + myVisibleLayersText2
<esri:ArcGISDynamicMapServiceLayer ID="Logis Layers" Url="http://gis.logis.org/arcgis/rest/services/Something/MapServer" Initialized="LOGIS_Initialized"/>
Private Sub LOGIS_Initialized(ByVal sender As System.Object, ByVal e As System.EventArgs) ' Get the first layer in the LayerInfo collection. Dim myArcGISDynamicMapServiceLayer As ESRI.ArcGIS.Client.ArcGISDynamicMapServiceLayer = MyMap.Layers.Item(0) ' Uncomment the next two lines of code to set only the 2nd and 3rd sub-layers to be visible. Dim myVisibleLayers2() As Integer = {1} myArcGISDynamicMapServiceLayer.VisibleLayers = myVisibleLayers2 End Sub
<esri:Map x:Name="MyMap" > <esri:ArcGISDynamicMapServiceLayer ID="MyLayer" Initialized="ArcGISDynamicMapServiceLayer_Initialized" Url="http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Specialty/ESRI_StateCityHighway_USA/MapServer" /> </esri:Map>
Private Sub ArcGISDynamicMapServiceLayer_Initialized(sender As Object, e As System.EventArgs) Dim l As ArcGISDynamicMapServiceLayer = TryCast(sender, ArcGISDynamicMapServiceLayer) l.VisibleLayers = New Integer() {0} End Sub
Dim l As ArcGISDynamicMapServiceLayer = TryCast(Me.MyMap.Layers(0), ArcGISDynamicMapServiceLayer)
Dim l As ArcGISDynamicMapServiceLayer = TryCast(Me.MyMap.Layers("MyLayer"), ArcGISDynamicMapServiceLayer)