Estoy creando una ventana acoplable que permite a los usuarios seleccionar características de un featureclass particular, iterar a través de los registros en el featureclass, rellenar cuadros de texto con ciertos atributos, y editar los registros existentes. Estoy tratando de mantener todo dentro del ámbito de la sesión de edición.
Un problema que estoy teniendo es escuchar los eventos del editor (inicio/parada de sesión de edición, cambio de selección). He cableado los controladores de eventos en el evento de carga de la ventana acoplable (DockWin) utilizando el código de abajo (Descargo de responsabilidad, soy un principiante ArcObjects):
Dim m_Editor As IEditor3
Dim m_EditEvents As IEditEvents_Event
Public Sub New(ByVal hook As Object)
' This call is required by the Windows Form Designer.
InitializeComponent()
' Add any initialization after the InitializeComponent() call.
Me.Hook = hook
'--Get the editor extension.
Dim editorUID As UID
editorUID = New UID
editorUID.Value = "esriEditor.Editor"
m_Editor = (My.ArcMap.Application.FindExtensionByCLSID(editorUID))
End Sub
Private Sub DockWin_Load(sender As Object, e As System.EventArgs) Handles Me.Load
m_EditEvents = CType(m_Editor, IEditEvents_Event)
AddHandler m_EditEvents.OnSelectionChanged, AddressOf OnSelectionChanged_Handler
AddHandler m_EditEvents.OnStartEditing, AddressOf OnStartEditing_Handler
AddHandler m_EditEvents.OnStopEditing, AddressOf OnStopEditing_Handler
End Sub
Private Sub OnSelectionChanged_Handler()
MessageBox.Show("Selection Changed")
End Sub
Private Sub OnStartEditing_Handler()
MessageBox.Show("Editing Started")
End Sub
Private Sub OnStopEditing_Handler()
MessageBox.Show("Editing Stopped")
End Sub
Ninguno de mis MessageBox aparece, diciéndome que no está conectado correctamente. ¿Hay algo aparentemente erróneo en mi planteamiento? ¿O hay otro más adecuado?
He visto que hay numerosos tipos de selecciones en ArcObjects. Tal vez otro es más adecuado?
He visto donde otros han tenido problemas con IActiveViewEvents y ventanas acoplables, aquí y aquí Así que me pregunto si alguien tiene experiencia con IEditEvents y ventanas acoplables.