private void LoadCell(string filename) { try { var cell = new EncCell(filename); var layer = new EncLayer(cell) { Name = new FileInfo(filename).Name }; if (mapView.Map == null) { CreateMap(null); } LoadingProgressPanel.Visibility = Visibility.Visible; var idx = layer.Name[2]; int insertIndex = 0; foreach (var l in mapView.Map.OperationalLayers) { var name = l.Name[2]; if (name > idx) { break; } insertIndex++; } mapView.Map.OperationalLayers.Insert(insertIndex, layer); progress.Maximum = mapView.Map.OperationalLayers.Count; } catch (System.Exception ex) { MessageBox.Show(ex.Message); } }
private void OpenExchangeSet_MenuItemClick(object sender, RoutedEventArgs e) { var dlg = new Microsoft.Win32.OpenFileDialog() { Filter = "ENC Exchange Set(CATALOG.*)|CATALOG.*|All files (*.*)|*.*", Multiselect = false }; if (dlg.ShowDialog() == true) { var dlg2 = new OpenExchangeSetWindow(dlg.FileName); if (dlg2.ShowDialog() == true) { foreach (var dataset in dlg2.SelectedDatasets.OrderBy(d => d.Name)) { try { var cell = new EncCell(dataset); var layer = new EncLayer(cell) { Name = dataset.Name }; if (mapView.Map == null) { CreateMap(null); } var idx = dataset.Name[2]; int insertIndex = 0; foreach (var l in mapView.Map.OperationalLayers) { var name = l.Name[2]; if (name > idx) { break; } insertIndex++; } mapView.Map.OperationalLayers.Insert(insertIndex, layer); LoadingProgressPanel.Visibility = Visibility.Visible; progress.Maximum = mapView.Map.OperationalLayers.Count; } catch (System.Exception ex) { MessageBox.Show(ex.Message); } } } } }