使用Devexpress时,ArcEngine 加载地图空白。
最近项目上在做ArcEngine的开发,为了界面好看,使用了DevExpress控件,
但是已经能够正常运行的代码,在DevDock组件中就是不能不能正常显示,
也能够获取到对象,TOCcontrol 也能够加载到图层信息,就是AxMapControl的
位置显示为空白,必需要拖拉一下窗体的边沿,让它的形状发生改变 ,
地图才能显示。
可以以前没有使用Dev控件的时候,是不需要这么操作就能正常显示的,
最后一句代码一句代码的调试,最后终于发现,下面这两端代码注释了之后
就可以正常显示了。至于为啥,我也不得其解。
this.axMapControl1.ShowScrollbars = false;
1 private void BackToOrignalView(IExtentStack viewExtentStack) 2 { 3 while (viewExtentStack.CanUndo()) 4 viewExtentStack.Undo(); 5 viewExtentStack.Reset(); 6 viewExtentStack.Do(this._curChildMapWnd.MapCtrl.ActiveView.Extent); 7 }
后来我发现,如果不注释的话,使用前一视图操作一次也能正常显示,
所以我在上面这段代码之后加上了前一视图、后一视图的代码。显示正常。
this.bbiBackView.PerformClick(); this.bbiForwardView.PerformClick();
这是两个按钮的点击触发代码,触发了对应按钮事件。就是前一视图和后一视图。