我已成功打开DBF表:
String dbfDirectoryPath = "Z:/ESRI/data/washingtonCountyDataFiles/tlg_roads";
IWorkspaceFactory workspaceFactory = new ShapefileWorkspaceFactory();
IWorkspace workspace = workspaceFactory.OpenFromFile(dbfDirectoryPath, 0);
IFeatureWorkspace featureWorkspace = workspace as IFeatureWorkspace;
String dbfTable = "tlg_roads_l.dbf";
ITable table = featureWorkspace.OpenTable(dbfTable);现在我想映射它,我认为这需要调用mapControl.AddLayer(层)。所以我需要以某种方式将这个对象从featureWorkspace转换为ILayer。
看起来我可以只使用CreateFeatureClass,然后转换为一个ILayer,但是包括CLSID在内的CreateFeatureClass有6个参数,所以我感觉我遗漏了一些概念上的要点。感谢您的建议:)
//IFeatureClass featureclass = tableWorkspace.CreateFeatureClass //req six args, incl. CLSID
ILayer layer = featureclass as ILayer;
mapControl.AddLayer(layer); 发布于 2010-08-26 05:09:00
显然,DBF文件不是用来查看的,只有形状文件是用来渲染的,而且很明显,DBF包含了shapefile所需的数据。这就是我被告知的,不管怎样,请随时给我启发。
https://stackoverflow.com/questions/3569778
复制相似问题