private void OnDrawComplete(DrawEventArgs args) { if (DrawCompleted != null) { DrawCompleted(this, args); } }
public override void Tap(GestureEventArgs e) { Point2D point = _map.ScreenToMap(e.GetPosition(_map)); DrawEventArgs args = new DrawEventArgs { Geometry =new GeoPoint(point.X,point.Y) }; OnDrawComplete(args); base.Tap(e); }
private async void DrawCompleted(object sender, DrawEventArgs e) { QueryByGeometryParameters para = new QueryByGeometryParameters { Geometry = e.Geometry, ReturnContent=true, SpatialQueryMode = SpatialQueryMode.INTERSECT, QueryParameters = new QueryParameterSet { ResampleExpectCount=0, QueryOption=QueryOption.ATTRIBUTEANDGEOMETRY, QueryParams = new List<QueryParameter>() { new QueryParameter { Name = "Countries@World", } } } }; try { QueryByGeometryService service = new QueryByGeometryService(url); var result = await service.ProcessAsync(para); if(result==null) { MessageBox.Show("返回结果没空"); return; } if(_feature.Features.Count>0) { _feature.ClearFeatures(); } foreach(Recordset recordset in result.Recordsets) { foreach(Feature f in recordset.Features) { _feature.AddFeature(f); } } } catch(Exception ex) { MessageBox.Show(ex.Message); } }