Открыть таблицу DBF -> создать объект ECOI arcobjects - PullRequest
0 голосов
/ 26 августа 2010

Я успешно открыл таблицу 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 (layer).Поэтому мне нужно каким-то образом преобразовать этот объект из featureWorkspace в ILayer.

Похоже, я могу просто создать CreateFeatureClass и затем привести его к ILayer, но есть 6 аргументов для CreateFeatureClass, включая CLSID, поэтому у меня сложилось впечатлениеЯ пропускаю некоторые концептуальные моменты.Спасибо за любой совет:)

//IFeatureClass featureclass = tableWorkspace.CreateFeatureClass //req six args, incl. CLSID
ILayer layer = featureclass as ILayer;
mapControl.AddLayer(layer); 

1 Ответ

1 голос
/ 26 августа 2010

Очевидно, что файлы DBF не предназначены для просмотра, а только файлы форм для рендеринга, и, очевидно, каким-то образом DBF содержит данные, необходимые для файлов форм. Это то, что мне сказали в любом случае, не стесняйтесь просветить меня.

...