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);