摘要: 版本:ArcGIS 10事件是由对象发送的标示某项行为发生的信号。事件可以由人机交互操作驱动,比如鼠标点击,也可以由其他程序逻辑驱动。触发事件的对象为事件发送器,捕获事件并相应事件的对象称为事件接收器。.NET Framework定义了委托类型提供了类似函数指针的功能,委托为事件发送器和接收器建立连接。定义委托委托包含的方法必须符合其签名。[C#]delegate int SomeDelegate(string s, bool b); //委托声明.侦听ArcObjects事件步骤:1、创建事件相关接口[C#]IGlobeDisplayEvents_Event globeDisplayEven 阅读全文
posted @ 2011-09-23 19:05 xmwang 阅读(765) 评论(0) 推荐(0) 编辑
摘要: 版本:ArcGIS 10 在C#中,相对直接转换,最好通过as操作符进行接口类型转换。通过as操作符进行类型转换失败时,会返回null值,而不是抛出异常。下面的代码演示了两种不同转换的形式:[C#]IGeometry geometry = (IGeometry)point; // 直接转换IGeometry geometry = point as IGeometry; // As操作符转换下面代码演示如何应对类型转换造成的空值:[C#]IPoint point = new PointClass();IGeometry geometry = point as IGeometry;if (geom 阅读全文
posted @ 2011-09-23 16:49 xmwang 阅读(669) 评论(0) 推荐(0) 编辑
摘要: 版本:ArcGIS 10 单例对象就是只能有一个实例的对象。在ArcObjects中,单例对象只能通过Activator类实例化,并通过ComReleaser类释放。另外要注意的是,同一个线程中的ArcObjects引用只能访问同一个线程中的对象。通过Activator类创建单例对象:[C#]Type t = Type.GetTypeFromProgID("esriFramework.StyleGallery");System.Object obj = Activator.CreateInstance(t);IStyleGallery sg = obj as IStyleG 阅读全文
posted @ 2011-09-23 16:48 xmwang 阅读(629) 评论(0) 推荐(0) 编辑