下面是一段查找图元的简单方法:
public void Method_Find_Feature(string lyr_name, string name)
{
MapXLib.FindFeature fRes = null;
fRes = map.Layers.Item(lyr_name).Find.Search(name,"");
if (fRes.FindRC % 10 == 1)//个位是xx1,其结果码表示精确匹配
{
map.CenterX = fRes.CenterX;
map.CenterY = fRes.CenterY;
map.Layers.Item(lyr_name).Selection.Add(fRes);
}
else
{
MessageBox.Show("该图层没有该图元");
}
}
注意:这里不能用MapXLib.FindFeature fRes = new MapXLib.FindFeatureClass();来创建FindFeature对象,否则会报错:带有 CLSID {436052C3-43E3-11D0-83EB-00AA00BD34FC}的COM对象无效或未注册。
要避开这种错误,应该在创建对象的时候赋null值即可。