link: http://www.cnblogs.com/Jingkunliu/archive/2013/01/10/2854710.html

PartialRefresh方法是部分刷新,效率方面比单纯的Refresh方法高很多。调用Refresh总是绘画毎一个对象。这是非常低效的。所以应该多使用PartialRefresh方法而少用Refresh。

刷新图层:    pMap.PartialRefresh(esriViewGeography, pLayer, null);

刷新所有图层:    pMap.PartialRefresh(esriViewGeography, null, null);

刷新所选择的对象:    pMap.PartialRefresh(esriViewGeoSelection, null, null);

刷新标注:    pMap.PartialRefresh(esriViewGraphics, null, null);

刷新图元    pLayout.PartialRefresh(esriViewGraphics, pElement, null);

刷新所有图元    pLayout.PartialRefresh(esriViewGraphics, null, null);

刷新所选择的图元    pLayout.PartialRefresh(esriViewGraphicSelection, null, null);

特殊的对于清除选择集,要在清除前后均进行一次刷新

   1: public void ClearSelectedMapFeatures(ESRI.ArcGIS.Carto.IActiveView activeView, ESRI.ArcGIS.Carto.IFeatureLayer featureLayer)
   2: {
   3:   if(activeView == null || featureLayer == null)
   4:   {
   5:     return;
   6:   }
   7:   ESRI.ArcGIS.Carto.IFeatureSelection featureSelection = featureLayer as ESRI.ArcGIS.Carto.IFeatureSelection; // Dynamic Cast
   8:   // Invalidate only the selection cache. Flag the original selection
   9:   activeView.PartialRefresh(ESRI.ArcGIS.Carto.esriViewDrawPhase.esriViewGeoSelection, null, null);
  10:   // Clear the selection
  11:   featureSelection.Clear();
  12:   // Flag the new selection
  13:   activeView.PartialRefresh(ESRI.ArcGIS.Carto.esriViewDrawPhase.esriViewGeoSelection, null, null);
  14: }

另外,对于如果对地图进行刷新、闪烁的时候,会出现先闪烁后刷新的问题,这是要添加相应的语句进行处理。

1: m_activeView.Refresh();//或者是某种部分刷新的语句
2: m_mapControl.FlashShape(...);

出现这个问题好像是由于图形显示和闪烁不在同一个线程中执行导致的。闪烁图形是一个很快的操作,而刷新背景却需要比较复杂的计算,所以先出来的语句 后执行结束。使用 m_activeView.UpdateWindow后就可以让代码在此等待。等到刷新确实搞定了。才开始执行FlashShape。使用下面的方法就可以解决这个问题:

1: m_activeView.Refresh().//获者是某种部分刷新语句
2: m_activeView.UpdateWindow();//这条语句是关键 。
3: m_mapControl.FlashShape(...);

ArcGIS Engine 刷新问题相关推荐

  1. ArcGIS engine中Display类库 (局部刷新)

    转自原文 ArcGIS engine中Display类库 (局部刷新) Display类库包括了用于显示GIS数据的对象.除了负责实际输出图像的主要显示对象(display object)外,这个类库 ...

  2. 利用ArcGIS Engine、VS .NET和Windows控件开发GIS应用

    Dixon 原文  用ArcGIS Engine.VS .NET和Windows控件开发GIS应用 此过程说明适合那些使用.NET建立和部署应用的开发者,它描述了使用ArcGIS控件建立和部署应用的方 ...

  3. 【转】使用ArcGIS Engine开发ArcGIS Server的胖客户端浏览程序

    摘要:在ArcGIS 9的家族中,增加了两个新产品:ArcGIS Engine和ArcGIS Server.由于它们各自分别在C/S领域和B/S领域的强大开发能力,一经推出就备受瞩目.其中ArcGIS ...

  4. ArcGIS Engine基础开发教程(转)

    ArcGIS Engine基础开发教程(0)--目录 <ArcEngine9.3 基础开发教程>是面向初中级开发者的一份简单易用,功能全面的学习资料及参考文档.教程首先从如何来创建一个Ar ...

  5. 《ArcGIS Engine+C#实例开发教程》第七讲 图层符号选择器的实现2

    <ArcGIS Engine+C#实例开发教程>第七讲 图层符号选择器的实现2 原文:<ArcGIS Engine+C#实例开发教程>第七讲 图层符号选择器的实现2 摘要:在第 ...

  6. ArcGIS Engine开发之地图基本操作(3)

    地图数据的加载 一.加载Shapefile数据 Shapefile文件是目前主流的一种空间数据的文件存储方式,也是不同GIS软件进行数据格式转换常用的中间格式.加载Shapefile数据的方式有两种: ...

  7. C#,ArcGIS Engine开发入门教程

    利用ArcGIS Engine.VS .NET和Windows控件开发GIS应用 Dixon整理 此过程说明适合那些使用.NET建立和部署应用的开发者,它描述了使用ArcGIS控件建立和部署应用的方法 ...

  8. ArcGIS Engine二次开发

    目录 1 安装环境配置 2 参考资料 3 面向对象基础 3.1 接口 3.2 类 3.3 对象 3.4 面向对象的三大特性 4 对象模型图和ArcGIS Engine开发帮助 4.1 对象模型图(OM ...

  9. Arcgis Engine之打开MXD文档

    Arcgis Engine之打开MXD文档 概述 方法一: 方法二: 概述 图层加载功能将用到MapControl 控件提供的LoadMxFile 方法. 该方法通过指定的*. Mxd文档路径直接获取 ...

最新文章

  1. python image stiching_Python自然语言处理,词云图生成
  2. python 进阶:修饰器的介绍
  3. 成都(10月24日时代广场)Windows 7社区发布活动
  4. kmeans实际应用例子 java_k-means聚类JAVA实例
  5. python基础6(来自廖雪峰的官方网站)
  6. MyBatis 事务管理解析和有关事务的几种特殊场景表现
  7. Docker的界面话管理工具
  8. LOL手游锤石上线吓坏玩家?英雄设计被吐槽,玩家:还我端游锤石
  9. mysql 主从_搭建mysql主从并编写监控主从状态脚本
  10. 重置系统_开课了,如何重置电脑系统?1分钟教会你!
  11. 解决Ubuntu不能全屏问题
  12. 如何管理公司的共享iPad?
  13. 纯CSS3制作优惠券线性UI效果
  14. 服务器 磁盘阵列数据恢复案例之:RAID6三块磁盘离线数据恢复过程
  15. 计算机硬件组成框图,以及各部件的作用及计算机系统的主要技术指标概念理解
  16. qsnctf 哥哥打篮球 wp
  17. 概率密度函数、概率函数、概率分布函数和积分等的一些概念
  18. 关于ca以及证书颁发的一些事
  19. cmd循环调用native2ascii.exe
  20. 记录vue预渲染prerender-spa-plugin踏坑

热门文章

  1. 服务器端接华为sdk无响应,sdk未响应
  2. linux 采集cpu 内存,Linux环境获取(cpu、内存、网卡流量等)系统性能数据
  3. android onattach方法,Java Fragment.onAttach方法代码示例
  4. VMware Fusion虚拟机的低分辨率问题(亲测有效)
  5. 中立时滞matlab,中立型时滞系统的稳定性改进判据
  6. 什么中文版软件可以操作mysql_一款软件,几乎可以操作~所有的~“数据库”,太牛逼了!...
  7. 系统动力学9种模型_软工国际标准专栏(9)|系统和软件质量模型
  8. npm install 报错 :stack Error: Can't find Python executable python
  9. HashMap底层实现原理/HashMap与HashTable区别/HashMap与HashSet区别
  10. js倒计时,距离某个时间的倒计时。