예제 #1
0
 public void OpenAttributeTable()
 {
     if (MapView.Active.GetSelectedLayers().Count() > 0)
     {
         foreach (MapMember mapMember in MapView.Active.GetSelectedLayers())
         {
             if (!TableControlContentFactory.IsMapMemberSupported(mapMember))
             {
                 continue;
             }
             string layerName = mapMember.Name;
             if (!TabItems.Select(n => n.TableName).Contains(layerName))
             {
                 TabItems.Add(new TabItemViewModel(mapMember, this.Content));
                 TabControlSelectedIndex = TabItems.Count() - 1;
             }
             else
             {
                 int tabIndex = 0;
                 foreach (var item in TabItems)
                 {
                     if (((TabItemViewModel)item).TableName == layerName)
                     {
                         break;
                     }
                     tabIndex++;
                 }
                 TabControlSelectedIndex = tabIndex;
             }
         }
     }
     SetTabControlVisibility();
 }
예제 #2
0
        private void OnProjectWindowSelectedItem(ProjectWindowSelectedItemsChangedEventArgs args)
        {
            if (args.IProjectWindow.SelectionCount > 0)
            {
                _selectedMapMember = null;

                // get the first selected item
                _selectedItem = args.IProjectWindow.SelectedItems.First();

                // check if it's supported by the TableControl
                if (!TableControlContentFactory.IsItemSupported(_selectedItem))
                {
                    return;
                }

                // create the content
                var tableContent = TableControlContentFactory.Create(_selectedItem);

                // assign it
                if (tableContent != null)
                {
                    this.TableContent = tableContent;
                }
            }
        }
예제 #3
0
        private void CreateTableControlContent(MapMember mapTableToAdd)
        {
            TableControlContent tableContent = null;

            if (TableControlContentFactory.IsMapMemberSupported(mapTableToAdd))
            {
                tableContent = TableControlContentFactory.Create(mapTableToAdd);
            }

            LabelsTableContent = tableContent;
        }
예제 #4
0
        public TabItemViewModel(MapMember mapMember,
                                DependencyObject visualTreeRoot)
        {
            TableContent   = TableControlContentFactory.Create(mapMember);
            MapMember      = mapMember;
            VisualTreeRoot = visualTreeRoot;

            MenuItem zoomItem = new MenuItem()
            {
                Header           = "Zoom to Feature",
                Command          = ZoomToRowCommand,
                CommandParameter = this
            };

            RowContextMenu = new ContextMenu();
            RowContextMenu.Items.Add(zoomItem);
        }
        private void CreateTableControlContent()
        {
            TableControlContent tableContent = null;

            var       selectedLyrs = MapView.Active.GetSelectedLayers();
            var       selectedSTs  = MapView.Active.GetSelectedStandaloneTables();
            MapMember item         = null;

            if (selectedLyrs != null && selectedLyrs.Count == 1)
            {
                item = selectedLyrs[0];
            }
            else if (selectedSTs != null && selectedSTs.Count == 1)
            {
                item = selectedSTs[0];
            }
            if (TableControlContentFactory.IsMapMemberSupported(item))
            {
                tableContent = TableControlContentFactory.Create(item);
            }

            TableContent = tableContent;
        }