Я пытаюсь нарисовать текстовый глиф на карте, и все учебники говорят, что мне нужен IDynamicDisplay, но я не знаю, как его получить. Заранее спасибо. ; ) редактировать: C # VS2010
Сначала вам нужно установить свойство IDynamicMap :: DynamicMapEnabled из объекта Map в true.
IDynamicMap pDynamicMap = pMap as IDynamicMap; pDynamicMap.DynamicMapEnabled = true
Затем есть два способа получить объект DynamicDisplay.Одним из них является создание пользовательского слоя с интерфейсом IDynamicLayer.Второй - перехват события IDynamicMapEvents :: BeforeDynamicDraw или события IDynamicMapEvents :: AfterDynamicDraw.Я надеюсь, что эта лучшая практика поможет вам.
Лучшие практики по использованию динамического дисплея
Вы должны подключить обработчик событий
ESRI.ArcGIS.Carto.IDynamicMapEvents_Event dynamicMapEvents = dynamicMap as ESRI.ArcGIS.Carto.IDynamicMapEvents_Event; ESRI.ArcGIS.Carto.IActiveViewEvents_Event avEvents = activeView as ESRI.ArcGIS.Carto.IActiveViewEvents_Event; avEvents.AfterDraw += new ESRI.ArcGIS.Carto.IActiveViewEvents_AfterDrawEventHandler(avEvents_AfterDraw); dynamicMapEvents.AfterDynamicDraw += new IDynamicMapEvents_AfterDynamicDrawEventHandler(dynamicMapEvents_AfterDynamicDraw);