加载控件,连接并加载相应功能,如下图所示
Private void GetDataFromMDBToolStripMenumItem_Click(object sender,EventArgs e)
{
IWorkspaceFactory MyWorkSpaceFactory = new AccessWorkspaceFactoryClass();
IWorkspace MyWorkSpace = MyWorkSpaceFactory.OpenFromFile(@"C:\数据资料等\hzdatabase.mdb", 0);//我的MDB数据库存放的路径
IFeatureWorkspace MyFeatureWorkSpace=MyWorkSpace as IFeatureWorkspace;
IEnumDataset MyEnum = MyWorkSpace.get_Datasets(esriDatasetType.esriDTAny);
IDataset MyDataSat = MyEnum.Next();
while (MyDataSat != null)
{
IFeatureDataset MyFeatureDataSat =(IFeatureDataset) MyDataSat;
if (MyDataSat.Type == esriDatasetType.esriDTFeatureClass)
{
//这部分是在视图中加载不同的图层
IFeatureLayer FeatureLayer = new FeatureLayerClass();
FeatureLayer.FeatureClass = MyFeatureWorkSpace.OpenFeatureClass(DataSat.Name);
ILayer MyLayer = FeatureLayer as ILayer;
MyLayer.Name = MyDataSat.Name;
axMapControl1.Map.AddLayer(MyLayer);
MyDataSat = MyDataSatEnum.Next(); }
else if (MyDataSat.Type == esriDatasetType.esriDTFeatureDataset)
{
IEnumDataset DataSatEnum = MyDataSat.Subsets;
IDataset DataSat = DataSatEnum.Next();
while (DataSat != null)
{
IFeatureLayer MyFeatureLayer = new FeatureLayerClass();
MyFeatureLayer.FeatureClass = MyFeatureWorkSpace.OpenFeatureClass(DataSat.Name);
ILayer Layer = MyFeatureLayer as ILayer;
Layer.Name = DataSat.Name;
axMapControl1.Map.AddLayer(Layer);
DataSat = DataSatEnum.Next(); }
}
MyDataSat = MyEnum.Next();
}
}
F5运行,结果如下图: