Private
Sub
AddAutoCompleteItems()
Me
.RadTextBoxControl1.AutoCompleteMode = AutoCompleteMode.Suggest
Dim
resultgoogle
As
RadListDataItemCollection = RadTextBoxControl1.AutoCompleteItems
Dim
value
As
String
= RadTextBoxControl1.Text
Dim
url
As
String
=
"https://maps.googleapis.com/maps/api/place/autocomplete/json?input="
& value &
"&types=establishment&language=fr&key=YOURAPIKEY"
Dim
request
As
WebRequest = WebRequest.Create(url)
Dim
response
As
HttpWebResponse = request.GetResponse()
Dim
responseStream
As
Stream = response.GetResponseStream()
Dim
reader
As
New
StreamReader(responseStream)
Dim
jsonData
As
String
= reader.ReadToEnd()
Dim
jResults
As
JObject = JObject.Parse(jsonData)
Dim
data
As
List(Of JToken) = jResults.Children().ToList
reader.Close()
For
Each
item
As
JProperty
In
data
item.CreateReader()
Select
Case
item.Name
Case
"predictions"
For
Each
msg
As
JObject
In
item.Values
If
resultgoogle.Contains(msg(
"description"
))
Then
'nothing
Else
resultgoogle.Add(
New
RadListDataItem(msg(
"description"
)))
End
If
Next
End
Select
Next
If
RadTextBoxControl1.Text =
""
Then
resultgoogle.Clear()
End
If
End
Sub
Private
Sub
RadTextBoxControl1_TextChanged(sender
As
Object
, e
As
EventArgs)
Handles
RadTextBoxControl1.TextChanged
AddAutoCompleteItems()
End
Sub
If you have a more efficient solution to limit requests on the google API, do not hesitate to share.
JC