private void ExecuteButton_Click(object sender, RoutedEventArgs e) { GraphicsLayer graphicsLayer = Mapa.Layers["MyGraphicsLayer"] as GraphicsLayer; graphicsLayer.ClearGraphics(); FindTask findTask = new FindTask("http://192.168.5.104/ArcGIS/rest/services/MDSalvador_Pesquisas/MapServer"); findTask.Failed += FindTask_Failed; FindParameters findParameters = new FindParameters(); // Layer ids to search findParameters.LayerIds.AddRange(new int[] { 1, 2 }); // Fields in layers to search findParameters.SearchFields.AddRange(new string[] { "TOPONIM", "NM_BAIRROS" }); string termoProcuradoSemAcentos = RemoveAcentos.removeAcentos(FindText.Text); ObservableCollection<LayerDefinition> layerDefs = new ObservableCollection<LayerDefinition>(); layerDefs.Add(new LayerDefinition() { LayerID = 1, Definition = "UPPER(TOPONIM_CI) like UPPER('%" + termoProcuradoSemAcentos + "%')" }); layerDefs.Add(new LayerDefinition() { LayerID = 2, Definition = "UPPER(NM_BAIRROS_CI) like UPPER('%" + termoProcuradoSemAcentos + "%')" }); findParameters.LayerDefinitions = layerDefs; // Bind data grid to find results. Bind to the LastResult property which returns a list // of FindResult instances. When LastResult is updated, the ItemsSource property on the // will update. Binding resultFeaturesBinding = new Binding("LastResult"); resultFeaturesBinding.Source = findTask; FindDetailsDataGrid.SetBinding(DataGrid.ItemsSourceProperty, resultFeaturesBinding); //findParameters.SearchText = FindText.Text; findTask.ExecuteAsync(findParameters); }
FindTask findTask = new FindTask("http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Specialty/ESRI_StatesCitiesRivers_USA/MapServer");
findTask.ExecuteCompleted += (a, b) =>
{
Dispatcher.BeginInvoke((Action)delegate
{
MessageBox.Show(string.Format("Result.Count: {0}", b.FindResults.Count));
});
};
FindParameters findParameters = new FindParameters();
findParameters.LayerIds.AddRange(new int[] { 0, 1, 2 });
findParameters.SearchFields.AddRange(new string[] { "CITY_NAME", "NAME", "SYSTEM", "STATE_ABBR", "STATE_NAME" });
findParameters.LayerDefinitions = new LayerDefinition[]
{
new LayerDefinition() { LayerID = 0, Definition = "STATE='California" },
new LayerDefinition() { LayerID = 2, Definition = "STATE='California" }
};
findParameters.SpatialReference =new SpatialReference(4326);
findParameters.SearchText = "River";
findTask.ExecuteAsync(findParameters);