使用Devexpress插件后,界面变得相对比较美观,但是使用arcengine开发gis程序过程中,当程序启动自动加载地图时,在程序中设置了fullextent但是还是不能全图显示。这个问题就不和谐了,因此查阅了相关的帮助文档,想到使用动态界面的方式生成axmapcontrol控件,手动绑定相应的事件。具体的代码如下:
public Form1() { InitializeComponent(); this.axMapControl1 = new ESRI.ArcGIS.Controls.AxMapControl(); axMapControl1.Dock = DockStyle.Fill; xtraTabPage1.Controls.Add(axMapControl1); registerEvent(); } //地图控件 private ESRI.ArcGIS.Controls.AxMapControl axMapControl1; //注册鼠标事件 private void registerEvent() { axMapControl1.OnMouseDown += new ESRI.ArcGIS.Controls.IMapControlEvents2_Ax_OnMouseDownEventHandler(axMapControl1_OnMouseDown); axMapControl1.OnMouseMove += new IMapControlEvents2_Ax_OnMouseMoveEventHandler(axMapControl1_OnMouseMove); } private void Form1_Load(object sender, EventArgs e) { axMapControl1.LoadMxFile([email protected]"\data\default.mxd"); axMapControl1.Extent = axMapControl1.FullExtent; }
时间: 2024-10-26 23:57:56