1
IWorkspaceFactory pWorkspaceFactory;
2
IFeatureWorkspace pFeatureWorkspace;
3
IFeatureLayer pFeatureLayer;
4![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
5
//获取当前路径和文件名
6
OpenFileDialog dlg = new OpenFileDialog();
7
dlg.Filter = "Shape(*.shp)|*.shp|All Files(*.*)|*.*";
8
dlg.Title = "Open Shapefile data";
9
dlg.ShowDialog();
10
string strFullPath = dlg.FileName;
11
if (strFullPath == "") return;
12
int Index = strFullPath.LastIndexOf("\\");
13
string filePath = strFullPath.Substring(0, Index);
14
string fileName = strFullPath.Substring(Index + 1);
15![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
16
//打开工作空间并添加shp文件
17
pWorkspaceFactory = new ShapefileWorkspaceFactoryClass();
18
pFeatureWorkspace = (IFeatureWorkspace)pWorkspaceFactory.OpenFromFile(filePath, 0);
19
pFeatureLayer = new FeatureLayerClass();
20
21
pFeatureLayer.FeatureClass = pFeatureWorkspace.OpenFeatureClass(fileName);
22
pFeatureLayer.Name = pFeatureLayer.FeatureClass.AliasName;
23
axMapControl1.Map.AddLayer(pFeatureLayer);
24
axMapControl1.ActiveView.Refresh();
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
2
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
3
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
4
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
5
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
6
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
7
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
8
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
9
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
10
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
11
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
12
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
13
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
14
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
15
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
16
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
17
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
18
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
19
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
20
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
21
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
22
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
23
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
24
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
2.加载栅格数据
1
IWorkspaceFactory pWorkspaceFactory;
2
IRasterWorkspace pRasterWorkspace;
3![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
4
OpenFileDialog dlg = new OpenFileDialog();
5
dlg.Filter = "Layer File(*.lyr)|*.jpg;*.bmp;*.tiff";
6
dlg.Title = "Open Raster Data File";
7
dlg.ShowDialog();
8
//获取当前路径和文件名
9
string strFullPath = dlg.FileName;
10
if (strFullPath == "") return;
11
int Index = strFullPath.LastIndexOf("\\");
12
string fileName = strFullPath.Substring(Index + 1);
13
string filePath = strFullPath.Substring(0, Index);
14![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
15
pWorkspaceFactory = new RasterWorkspaceFactoryClass();
16
pRasterWorkspace = (IRasterWorkspace)pWorkspaceFactory.OpenFromFile(filePath, 0);
17
IRasterDataset pRasterDataset = (IRasterDataset)pRasterWorkspace.OpenRasterDataset(fileName);
18
IRasterLayer pRasterLayer = new RasterLayerClass();
19
pRasterLayer.CreateFromDataset(pRasterDataset);
20
axMapControl1.Map.AddLayer(pRasterLayer);
21
axMapControl1.ActiveView.Refresh();
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
2
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
3
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
4
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
5
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
6
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
7
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
8
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
9
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
10
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
11
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
12
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
13
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
14
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
15
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
16
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
17
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
18
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
19
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
20
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
21
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
3.加载CAD数据
1
IWorkspaceFactory pWorkspaceFactory;
2
IFeatureWorkspace pFeatureWorkspace;
3
IFeatureLayer pFeatureLayer;
4
IFeatureDataset pFeatureDataset;
5
//获取当前路径和文件名
6
OpenFileDialog dlg = new OpenFileDialog();
7
dlg.Filter = "CAD(*.dwg)|*.dwg|All Files(*.*)|*.*";
8
dlg.Title = "Open CAD Data file";
9
dlg.ShowDialog();
10
string strFullPath = dlg.FileName;
11
if (strFullPath == "") return;
12
int Index = strFullPath.LastIndexOf("\\");
13
string filePath = strFullPath.Substring(0, Index);
14
string fileName = strFullPath.Substring(Index + 1);
15
//打开CAD数据集
16
pWorkspaceFactory = new CadWorkspaceFactoryClass();
17
pFeatureWorkspace = (IFeatureWorkspace)pWorkspaceFactory.OpenFromFile(filePath, 0);
18
//打开一个要素集
19
pFeatureDataset = pFeatureWorkspace.OpenFeatureDataset(fileName);
20
//IFeaturClassContainer可以管理IFeatureDataset中的每个要素类
21
IFeatureClassContainer pFeatClassContainer = (IFeatureClassContainer)pFeatureDataset;
22
//对CAD文件中的要素进行遍历处理
23
for (int i = 0; i < pFeatClassContainer.ClassCount - 1; i++)
24
{
25
IFeatureClass pFeatClass = pFeatClassContainer.get_Class(i);
26
if (pFeatClass.FeatureType == esriFeatureType.esriFTCoverageAnnotation)
27
//如果是注记,则添加注记层
28
pFeatureLayer = new CadAnnotationLayerClass();
29
else//如果是点、线、面,则添加要素层
30
{
31
pFeatureLayer = new FeatureLayerClass();
32
pFeatureLayer.Name = pFeatClass.AliasName;
33
pFeatureLayer.FeatureClass = pFeatClass;
34
axMapControl1.Map.AddLayer(pFeatureLayer);
35
axMapControl1.ActiveView.Refresh();
36
}
37
}
4.加载PersonGeodatabase数据![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
2
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
3
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
4
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
5
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
6
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
7
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
8
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
9
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
10
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
11
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
12
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
13
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
14
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
15
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
16
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
17
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
18
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
19
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
20
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
21
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
22
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
23
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
24
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
25
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
26
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
27
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
28
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
29
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
30
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
31
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
32
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
33
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
34
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
35
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
36
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
37
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
1
IWorkspaceFactory pAccessWorkspaceFactory;
2
IFeatureWorkspace pFeatureWorkspace;
3
IFeatureLayer pFeatureLayer;
4
IFeatureDataset pFeatureDataset;
5![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
6
//获取当前路径和文件名
7
OpenFileDialog dlg = new OpenFileDialog();
8
dlg.Filter = "Personal Geodatabase(*.mdb)|*.mdb|All Files(*.*)|*.*";
9
dlg.Title = "Open PersonGeodatabase file";
10
dlg.ShowDialog();
11
string strFullPath = dlg.FileName;
12
if (strFullPath == "") return;
13![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
14
//打开personGeodatabase,并添加图层
15
pAccessWorkspaceFactory = new AccessWorkspaceFactoryClass();
16
//打开工作空间并遍历数据集
17
IWorkspace pWorkspace = pAccessWorkspaceFactory.OpenFromFile(strFullPath, 0);
18
IEnumDataset pEnumDataset = pWorkspace.get_Datasets(ESRI.ArcGIS.Geodatabase.esriDatasetType.esriDTAny);
19
pEnumDataset.Reset();
20
IDataset pDataset = pEnumDataset.Next();
21
//如果数据集是IFeatureDataset,则遍历它下面的子类
22
if (pDataset is IFeatureDataset)
23
{
24
pFeatureWorkspace = (IFeatureWorkspace)pAccessWorkspaceFactory.OpenFromFile(strFullPath, 0);
25
pFeatureDataset = pFeatureWorkspace.OpenFeatureDataset(pDataset.Name);
26
IEnumDataset pEnumDataset1 = pFeatureDataset.Subsets;
27
pEnumDataset1.Reset();
28
IDataset pDataset1 = pEnumDataset1.Next();
29
//如果子类是FeatureClass,则添加到axMapControl1中
30
if (pDataset1 is IFeatureClass)
31
{
32
pFeatureLayer = new FeatureLayerClass();
33
pFeatureLayer.FeatureClass = pFeatureWorkspace.OpenFeatureClass(pDataset1.Name);
34
pFeatureLayer.Name = pFeatureLayer.FeatureClass.AliasName;
35
axMapControl1.Map.AddLayer(pFeatureLayer);
36
axMapControl1.ActiveView.Refresh();
37
}
38
else
39
{
40
MessageBox.Show("No FeatureLayer!");
41
}
42
}
43
else
44
{
45
pFeatureWorkspace = (IFeatureWorkspace)pWorkspace;
46
pFeatureLayer = new FeatureLayerClass();
47
pFeatureLayer.FeatureClass = pFeatureWorkspace.OpenFeatureClass("图层名");
48
pFeatureLayer.Name = pFeatureLayer.FeatureClass.AliasName;
49
axMapControl1.Map.AddLayer(pFeatureLayer);
50
axMapControl1.ActiveView.Refresh();
51
}
5.加载SDE数据库数据![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
2
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
3
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
4
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
5
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
6
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
7
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
8
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
9
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
10
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
11
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
12
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
13
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
14
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
15
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
16
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
17
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
18
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
19
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
20
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
21
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
22
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
23
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
24
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
25
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
26
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
27
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
28
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
29
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
30
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
31
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
32
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
33
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
34
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
35
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
36
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
37
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
38
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
39
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
40
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
41
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
42
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
43
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
44
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
45
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
46
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
47
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
48
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
49
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
50
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
51
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
1
public ESRI.ArcGIS.Geodatabase.IWorkspace arcSDEWorkspaceOpen(String server, String instance, String user, String password, String database, String version)
2
{
3
try
4
{
5
// Create and populate the property set
6
ESRI.ArcGIS.esriSystem.IPropertySet propertySet = new ESRI.ArcGIS.esriSystem.PropertySetClass();
7
propertySet.SetProperty("SERVER", server);
8
propertySet.SetProperty("INSTANCE", instance);
9
propertySet.SetProperty("DATABASE", database);
10
propertySet.SetProperty("USER", user);
11
propertySet.SetProperty("PASSWORD", password);
12
propertySet.SetProperty("VERSION", version);
13![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
14
ESRI.ArcGIS.Geodatabase.IWorkspaceFactory2 workspaceFactory;
15
workspaceFactory = (ESRI.ArcGIS.Geodatabase.IWorkspaceFactory2)new SdeWorkspaceFactoryClass();
16
return workspaceFactory.Open(propertySet, 0);
17
}
18
catch (Exception e)
19
{
20
throw new Exception(String.Format("arcSDEWorkspaceOpen: {0}", e.Message), e);
21
}
22
}
23![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
24
IWorkspace pWorkspace = arcSDEWorkspaceOpen("计算机名", "5151", "数据库用户", "密码", "", "sde.DEFAULT");
25![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
26
IFeatureWorkspace pFeattureWS = (IFeatureWorkspace)pWorkspace;
27
IFeatureClass pFeatureClass = pFeattureWS.OpenFeatureClass("图层名");
28
IFeatureLayer pFeatureLayer = new FeatureLayerClass();
29
pFeatureLayer.FeatureClass = pFeatureClass;
30![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
31
axMapControl1.AddLayer(pFeatureLayer);
32
axMapControl1.Refresh();
http://www.cnblogs.com/wolf-pl/archive/2008/04/03/1135920.html
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
2
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
3
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
4
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
5
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
6
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
7
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
8
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
9
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
10
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
11
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
12
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
13
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
14
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
15
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
16
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
17
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
18
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
19
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
20
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
21
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
22
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
23
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
24
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
25
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
26
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
27
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
28
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
29
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
30
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
31
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
32
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)