BingSearchDataProvider Class
The class that is used to send requests to the Bing Maps Search service.
Namespace: DevExpress.XtraMap
Assembly: DevExpress.XtraMap.v18.2.dll
Declaration
Remarks
The Bing Search Data provider is represented by the BingSearchDataProvider
object that can be accessed via the InformationLayer.DataProvider property.
To get access to the search options of the Bing Search Data provider, use the BingSearchDataProvider.SearchOptions property.
If you wish to see the search results in a search panel, use the BingSearchDataProvider.ShowSearchPanel property.
The Search(string keyword) method is used to find a particular location by its name.
The Search(BingAddress address) method is used to find places by their addresses.
The results will be returned using the SearchRequestResult.SearchResults property of the BingSearchDataProvider.SearchCompleted event arguments’ SearchCompletedEventArgs.RequestResult property.
Example
This example demonstrates how to allow users to search for a specific place on a map using the Search panel.
To enable searching in the map control, do the following.
- Create an InformationLayer and add it to the map.
- Create an instance of the
BingSearchDataProvider
and assign it to the InformationLayer.DataProvider property. - Specify the Bing Maps key using the BingMapDataProvider.BingKey property.
The Search panel appears automatically (since the BingSearchDataProvider.ShowSearchPanel property value is true by default).
Note
Refer to How to: Get a Bing Maps Key if you run the application and see a window with the following error message: “The specified Bing Maps key is invalid. To create a developer account, refer to https://www.microsoft.com/en-us/maps/create-a-bing-maps-key“.
Note
A complete sample project is available at https://github.com/DevExpress-Examples/how-to-connect-a-map-control-to-the-bing-search-web-service-e5065
using DevExpress.XtraMap;
using System.Windows.Forms;
namespace ConnectBingSearchProvider {
public partial class Form1 : Form {
const string bingKey = "YOUR BING KEY HERE";
InformationLayer SearchLayer {
get {
return (InformationLayer)mapControl1.Layers["SearchLayer"];
}
}
public Form1() {
InitializeComponent();
BingSearchDataProvider searchProvider = new BingSearchDataProvider() {
BingKey = bingKey
};
searchProvider.SearchOptions.ResultsCount = 5;
SearchLayer.DataProvider = searchProvider;
}
}
}