看了這個地址http://blog.csdn.net/brokencar/article/details/6069997#csharp的博客,受用很大。但是我用的arcengine 10和vs2010版本可能和他的有沖突,有些代碼用不起,故根據他的引導自己結合自己實際修改了下,實現完整運行,現在將代碼貼下,希望廣大AE用戶有用:
public
void getSelectedFeature()
{
try
{
IMap map = axMapControl1.Map;
ISelection selection = map.FeatureSelection;
IEnumFeatureSetup iEnumFeatureSetup = (IEnumFeatureSetup)selection;
iEnumFeatureSetup.AllFields = true;
IEnumFeature enumFeature = (IEnumFeature)iEnumFeatureSetup;
enumFeature.Reset();
IFeature feature = enumFeature.Next();
while (feature != null)
{
string hehe = feature.get_Value( 5).ToString(); // 這邊get_Value(5)里面的數字代表你shapefile文件里面dbf表中字段的位置,0代表第一個,我這里面5代表的是第6個字段哈
MessageBox.Show(hehe);
feature = enumFeature.Next();
}
}
catch (Exception e)
{
}
}
{
try
{
IMap map = axMapControl1.Map;
ISelection selection = map.FeatureSelection;
IEnumFeatureSetup iEnumFeatureSetup = (IEnumFeatureSetup)selection;
iEnumFeatureSetup.AllFields = true;
IEnumFeature enumFeature = (IEnumFeature)iEnumFeatureSetup;
enumFeature.Reset();
IFeature feature = enumFeature.Next();
while (feature != null)
{
string hehe = feature.get_Value( 5).ToString(); // 這邊get_Value(5)里面的數字代表你shapefile文件里面dbf表中字段的位置,0代表第一個,我這里面5代表的是第6個字段哈
MessageBox.Show(hehe);
feature = enumFeature.Next();
}
}
catch (Exception e)
{
}
}