看了这个地址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)
{
}
}