Exemplo n.º 1
0
        /// <summary>
        /// 增加图层
        /// </summary>
        /// <param name="layer"></param>
        public void AddLayer(LayerBase layer)
        {
            if (layer == null)
            {
                return;
            }

            PaintContext.LayerGroup.Add(layer);

            var Geometrys = layer.GetGeometries();

            if (Geometrys != null)
            {
                Geometrys.ForEach(m => PaintContext.Canvas.AddChild(m));
            }
        }
Exemplo n.º 2
0
        private void LayerGroup_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            Service.PaintContext.Update(LayerGroup.SelectedItems);
            CvsRoot.ContextMenu = Service.GetContextMenu();

            foreach (var item in _oldSelectedLayers)
            {
                foreach (var Geometry in item.GetGeometries())
                {
                    Geometry.Style.Highlight = false;
                }

                item.Refresh();
            }

            _oldSelectedLayers.Clear();

            if (LayerGroup.SelectedItems.Count == 1)
            {
                LayerBase layer     = LayerGroup.SelectedItems[0] as LayerBase;
                var       Geometrys = layer.GetGeometries();

                if (Geometrys != null && Geometrys.Count == 1)
                {
                    TabItemGeometryProperty.Content = Geometrys[0].Style.GetEditorPanel();
                }
                else
                {
                    TabItemGeometryProperty.Content = null;
                }
            }
            else
            {
                TabItemGeometryProperty.Content = null;
            }

            foreach (var item in LayerGroup.SelectedItems)
            {
                LayerBase layer = item as LayerBase;
                _oldSelectedLayers.Add(layer);
                layer.Highlight();
            }
        }