1 votos

¿Cómo consigo que ArcObjects no ignore una definición de capa que se ha establecido?

Estoy creando una aplicación de búsqueda de texto simple, donde el usuario puede introducir una búsqueda de direcciones y el resultado aparece en un listbox, que luego puede seleccionar y hacer zoom a la dirección.

El problema que tengo es que he configurado la definición de la capa, dentro de la capa con la que estoy trabajando, para que sólo se muestren las direcciones residenciales (y esto funciona, ya que sólo puedo ver las direcciones residenciales en la tabla de atributos), sin embargo, cuando introduzco una calle (en la aplicación), que no contiene sólo direcciones residenciales, los registros aparecen en mi cuadro de lista a pesar de que he establecido la definición de la capa.

¿Es normal este comportamiento? y ¿cuál es la mejor manera de evitarlo?

Gracias

1voto

kjo Puntos 197

Es un comportamiento normal.

Puede utilizar IGeoFeatureLayer . Buscará sólo dentro de su consulta de definición.

Dim pGeoFtrLyr As IGeoFeatureLayer
Set pGeoFtrLyr = pMap.Layer(0)

Dim pQueryFilter As IQueryFilter
Set pQueryFilter = New QueryFilter
pQueryFilter.WhereClause = "STNAME = 'Stack Street'"

Dim pFtrCur As IFeatureCursor
Set pFtrCur = pGeoFtrLyr.Search(pQueryFilter, False)

O simplemente puede establecer su QueryFilter para incluir también la consulta de definición de capas.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X