BingSearchDataProvider Class
The class that is used to send requests to the Bing Maps Search service.
Namespace: DevExpress.XtraMap
Assembly: DevExpress.XtraMap.v24.1.dll
NuGet Package: DevExpress.Win.Map
Declaration
Remarks
The Bing Search Data provider is represented by the BingSearchDataProvider
object that can be accessed via the InformationLayer.DataProvider property.
Important
On May 21, 2024, Microsoft announced that Bing Maps for Enterprise and its API will be discontinued. Azure Maps will be a single unified enterprise mapping platform available from Microsoft.
We are working on API compatible with Azure Maps and expect to ship it with our next major release (v24.2).
If you have an existing license to Bing Maps for Enterprise, you can continue using our existing API. You need to transition to new API until June 30, 2025 (free and basic license) or until June 30, 2028 (enterprise license).
The last date you can get a new license to Bing Maps for Enterprise is June 30, 2025. If you do not have an existing license after that date, you would not be able to use our map controls with Bing Maps or Azure Maps (until we release the new API). During that time, you can use other map providers supported by our controls, such as OpenStreetMap.
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 MapSearchPanelOptions.Visible 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“.
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;
}
}
}