public override void OnActivate() { base.OnActivate(); IMapControlDefault mapCtrl = null; if (m_app.MapControl is AxMapControl) { mapCtrl = ((m_app.MapControl as AxMapControl).Object as IMapControlDefault); } else { return; } WinConnectToSDE winConnToSDE = new WinConnectToSDE(); winConnToSDE.Owner = m_app.MainWindow; if ((bool)winConnToSDE.ShowDialog()) { string server = winConnToSDE.Server; string instance = winConnToSDE.Instance; string database = winConnToSDE.Database; string user = winConnToSDE.User; string password = winConnToSDE.Password; string version = winConnToSDE.Version; IWorkspace ws = OpenSDEWorkspace(server, instance, database, user, password, version); if (ws != null) { FormSelectDatasets frmSelectDS = new FormSelectDatasets(ws); if (frmSelectDS.ShowDialog() == DialogResult.OK) { List <ILayer> layers = frmSelectDS.SelectedLayers; foreach (ILayer layer in layers) { AddLayerToMap(mapCtrl.Map, layer); } mapCtrl.ActiveView.Extent = frmSelectDS.SelectedExtent; mapCtrl.ActiveView.Refresh(); } } } }
public override void OnActivate() { base.OnActivate(); IMapControlDefault mapCtrl = null; if (m_app.MapControl is AxMapControl) { mapCtrl = ((m_app.MapControl as AxMapControl).Object as IMapControlDefault); } else { return; } string gdbPath = GetFileGDBPath(); if (Directory.Exists(gdbPath)) { IWorkspace ws = OpenFileGDBWorkspace(gdbPath); if (ws != null) { FormSelectDatasets frmSelectDS = new FormSelectDatasets(ws); if (frmSelectDS.ShowDialog() == DialogResult.OK) { List <ILayer> layers = frmSelectDS.SelectedLayers; foreach (ILayer layer in layers) { AddLayerToMap(mapCtrl.Map, layer); } mapCtrl.ActiveView.Extent = frmSelectDS.SelectedExtent; mapCtrl.ActiveView.Refresh(); } } } }
public override void OnActivate() { base.OnActivate(); IMapControlDefault mapCtrl = null; if (m_app.MapControl is AxMapControl) { mapCtrl = ((m_app.MapControl as AxMapControl).Object as IMapControlDefault); } else { return; } OpenFileDialog openDlg = new OpenFileDialog(); openDlg.Filter = "个人地理数据库(*.mdb)|*.mdb"; if (openDlg.ShowDialog() == DialogResult.OK) { System.Windows.Forms.Application.DoEvents(); IWorkspace ws = OpenAccessWorkspace(openDlg.FileName); if (ws != null) { FormSelectDatasets frmSelectDS = new FormSelectDatasets(ws); if (frmSelectDS.ShowDialog() == DialogResult.OK) { List <ILayer> layers = frmSelectDS.SelectedLayers; foreach (ILayer layer in layers) { AddLayerToMap(mapCtrl.Map, layer); } mapCtrl.ActiveView.Extent = frmSelectDS.SelectedExtent; mapCtrl.ActiveView.Refresh(); } /* * IEnumDataset datasets = ws.Datasets[esriDatasetType.esriDTAny]; * datasets.Reset(); * IDataset dataset = datasets.Next(); * * while (dataset != null) * { * if (dataset is IFeatureDataset) * { * IGroupLayer groupLayer = new GroupLayerClass(); * groupLayer.Name = dataset.Name; * * IEnumDataset subsets = dataset.Subsets; * if (subsets != null) * { * subsets.Reset(); * IDataset subset = subsets.Next(); * while (subset != null) * { * if (subset is IFeatureClass) * { * IFeatureLayer featLayer = new FeatureLayerClass(); * featLayer.Name = subset.Name; * featLayer.FeatureClass = subset as IFeatureClass; * * groupLayer.Add(featLayer); * } * subset = subsets.Next(); * } * } * AddLayerToMap(mapCtrl.Map, groupLayer); * } * else if (dataset is IFeatureClass) * { * IFeatureLayer featLayer = new FeatureLayerClass(); * featLayer.Name = dataset.Name; * featLayer.FeatureClass = dataset as IFeatureClass; * * AddLayerToMap(mapCtrl.Map, featLayer); * } * dataset = datasets.Next(); * } */ } } }