示例#1
0
        private void OnSublayerToggled(object sender, RoutedEventArgs e)
        {
            var toggle = sender as ToggleSwitch;

            // Find the layer from the image layer
            ArcGISSublayer sublayer = _imageLayer.Sublayers.First(x => x.Name == toggle.Header.ToString());

            // Change sublayers visibility
            sublayer.IsVisible = toggle.IsOn;
        }
        private void OnCellOnOffChanged(object sender, ToggledEventArgs e)
        {
            SwitchCell cell = (SwitchCell)sender;

            // Find the layer from the image layer
            ArcGISSublayer sublayer = _imageLayer.Sublayers.First(x => x.Name == cell.Text);

            // Change sublayers visibility
            sublayer.IsVisible = e.Value;
        }
        private void OnSublayersMenuItemClicked(object sender, PopupMenu.MenuItemClickEventArgs e)
        {
            // Change the checked value
            e.Item.SetChecked(!e.Item.IsChecked);

            // Get title from the selected item
            string selectedSublayerTitle = e.Item.TitleCondensedFormatted.ToString();

            // Get index that is used to get the selected url
            ArcGISSublayer sublayer = _imageLayer.Sublayers.First(x => x.Name == selectedSublayerTitle);

            sublayer.IsVisible = e.Item.IsChecked;
        }
        // protected  override void onLoad(EventArgs e)
        //{

        //}


        private void addSublayer(Layer layer, ArcGISSublayer sublayer, Dictionary <string, Layer> hash)
        {
            if (sublayer.Sublayers.Count > 0)
            {
                foreach (ArcGISSublayer _sublayer in sublayer.Sublayers.ToArray())
                {
                    addSublayer(layer, _sublayer, hash);
                }
            }
            else
            {
                string       sublayerName = sublayer.Name;
                ComboBoxItem item         = new ComboBoxItem();
                item.Content = sublayer.Name;
                item.Uid     = layer.Name + "_" + sublayerName;
                hash.Add(item.Uid, layer);
                layerList.Items.Add(item);
            }
        }