HiI have two layers in my map. The first layer is points, and the second layer is polygonsI want to select points that is inside the selected polygons based on attributesI can use querytask on polygon using attribute and return the polygon graphics, and then using this graphics with querytask on points using spatial query to return the point inside this polygon. This method works great if I have only one polygon and I want to select the points inside this single polygon, but I cannot use it if I have more than one polygon !!!! This my code I used it select points.
Private Sub Button1_Click(sender As System.Object, e As System.Windows.RoutedEventArgs) Handles Button1.Click
Dim QueryTask As New QueryTask(PolygonURL)
AddHandler QueryTask.ExecuteCompleted, AddressOf QueryTask_ExecuteCompleted
AddHandler QueryTask.Failed, AddressOf QueryTask_Failed
Dim query As New ESRI.ArcGIS.Client.Tasks.Query
query.Where = "ZONE_TYPE='URBAN AREA'"
query.OutSpatialReference = MainMap.SpatialReference
query.OutFields.Add("*")
query.ReturnGeometry = True
QueryTask.ExecuteAsync(query, "GetZoneGeometry")
End Sub
Private Sub QueryTask_ExecuteCompleted(sender As Object, e As QueryEventArgs)
If TryCast(e.UserState, String) = "GetZoneGeometry" Then
Dim QueryTask As New QueryTask(PointURL)
AddHandler QueryTask.ExecuteCompleted, AddressOf QueryTask_ExecuteCompleted
AddHandler QueryTask.Failed, AddressOf QueryTask_Failed
Dim query As New ESRI.ArcGIS.Client.Tasks.Query
query.Where = "1=1"
query.Geometry = e.FeatureSet.Features(0).Geometry ' How to use all geometries ???????
query.OutSpatialReference = MainMap.SpatialReference
query.OutFields.Add("*")
query.ReturnGeometry = True
QueryTask.ExecuteAsync(query, "SelectPoint")
ElseIf TryCast(e.UserState, String) = "SelectPoint" Then
If e.FeatureSet.Features IsNot Nothing AndAlso e.FeatureSet.Features.Count > 0 Then
' add points to graphics layer
' ...
' ...
Else
MessageBox.Show("No result found")
End If
End If
End Sub
In this code I want to select all points inside Urban Areas.