您的位置:首页 > 其它

ArcEngine二次开发_04(鼠标点击图层点显示属性(两个及以上))

2018-03-12 19:17 330 查看
首先,这个功能之前有琢磨了一段时间,分享给大家,谢谢各位朋友们 private void mainMapControl_OnMouseDown(object sender, ESRI.ArcGIS.Controls.IMapControlEvents2_OnMouseDownEvent e)
{
if (mainMapControl.LayerCount > 0) //判断是否在axMapControl上加载图层
{
IFeatureLayer pFeatureLayer = mainMapControl.Map.get_Layer(0) as IFeatureLayer;
IFeatureClass pFeatureClass = pFeatureLayer.FeatureClass;
string tipId = null;
string tipSector = null;
int num = pFeatureClass.Fields.FieldCount;
for (int i = 0; i < num; i++)
{
string filedName = pFeatureClass.Fields.get_Field(i).Name; //用于遍历属性名
if (filedName == "BTS_ID")
{
pFeatureLayer.DisplayField = filedName;
tipId = pFeatureLayer.get_TipText(e.mapX, e.mapY, mainMapControl.ActiveView.FullExtent.Width / 10000);
}
if (filedName == "1X_Sector_")
{
pFeatureLayer.DisplayField = filedName;
tipSector = pFeatureLayer.get_TipText(e.mapX, e.mapY, mainMapControl.ActiveView.FullExtent.Width / 10000);
}
}
pFeatureLayer.ShowTips = true;
string pTip;
pTip = tipId + " _ " + tipSector;
if (pTip != null) // 判断pTip内容是否为空
{
toolTip1.SetToolTip(mainMapControl, pTip); //需先添加tooltip控件:当用户移动关联控件时显示信息
}
else
{
toolTip1.SetToolTip(mainMapControl, "");
}
}
else
return;
}接下来看一下显示效果吧哈哈哈哈

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐