1. In VS.NET 2005, go to your project's References folder in Solution Explorer. Select ESRI.ArcGIS.AxMapControl or ESRI.ArcGIS.MapControl. In the Properties Pane, change Aliases from global to global, MapControlAlias.
将AxMapControl,MapControl都加入到引用中,修改ESRI.ArcGis.AxMapControl引用的属性,修改其Aliases(别名)由"global" to "global, MapControlAlias";
2. In your code at the first line in the file add: extern alias MapControlAlias;
在其他命名空间之前添加extern alias MapControlAlias;
3. Add alias to your ambiguous call. Ex. this.axMapControl1.OnMouseMove += new MapControlAlias::ESRI.ArcGIS.MapControl.IMapControlEvents2_OnMouseMoveEventHandler(this.axMapControl1_OnMouseMove);
在冲突的地方,加上别名::想要调用的对象
This should work, don't worry about trying to do commandline /references as I couldn't figure it out, but the Properties Alias worked.
修改后,如下:
引用代码:
extern alias MapControlAlias;
using DevExpress.XtraEditors;
using DevExpress.XtraEditors.Controls;
using ESRI.ArcGIS.Carto;
using ESRI.ArcGIS.DataSourcesFile;
using ESRI.ArcGIS.DataSourcesRaster;
using ESRI.ArcGIS.esriSystem;
using ESRI.ArcGIS.Geodatabase;