cl.geologyidea.com
Más

Vb.net arcobjects habilita el elemento del menú contextual personalizado solo si se selecciona una función

Vb.net arcobjects habilita el elemento del menú contextual personalizado solo si se selecciona una función


We are searching data for your request:

Forums and discussions:
Manuals and reference books:
Data from registers:
Wait the end of the search in all databases.
Upon completion, a link will appear to access the found materials.


La solución puede ser muy simple, pero no la he hecho funcionar.

Quiero habilitar un elemento del menú contextual de la vista de datos solo si se selecciona una característica (en la capa de polilínea), todos los demás lugares deben aparecer en gris. ¿Puedo decir que lo que debo hacer es verificar si una función está seleccionada? Busqué esto pero no encontré una solución adecuada. ¿O alguna otra inquietud?

Estoy usando ArcObjects 10.2.2 y VB.NET.


Si está creando un complemento de ArcGIS (en lugar del formato de extensión anterior), creo que puede habilitar / deshabilitar botones o elementos de menú dentro de su clase de botón de esta manera:

Protected Overrides Sub OnUpdate () Enabled = bSelected End Sub

Donde bSelected es su booleano que indica si su función está seleccionada o no. Puede verificar si una característica en una capa de características en particular está seleccionada de esta manera:

Dim pFeatureSelection como IFeatureSelection = pLayer If pFeatureSelection.SelectionSet.Count = 0 Then bSelected = False Else bSelected = True End If

O puede juntarlos para reducir el código. Prueba esto:

Protected Overrides Sub OnUpdate () Dim pFeatureSelection As IFeatureSelection = pLayer If pFeatureSelection.SelectionSet.Count = 0 Then Enabled = False Else Enabled = True End If End Sub

EDITAR: Me acabo de dar cuenta de que dijiste menú contextual, que supongo que significa un menú de clic derecho. En cuyo caso, no estoy seguro, ya que nunca he usado menús contextuales en ArcMap.



Comentarios:

  1. Brand

    No dije eso.

  2. Adofo

    Si todo esto imaginario

  3. Avidor

    Le estoy muy agradecido.



Escribe un mensaje