J
jrthor2
I have a .net application that is using microsofts locator service. I
have this working, but when I select a user to locate from my contact
list, it comes back with a map, but the pushpin has the users
domain\username as the pin label. I would lik to show the person's
display name instead. I was told I need to iterate through my array
of locatable contacts, performing a string compare of pr.DomainAlias
to LocatableContact.DomainAlias. When I find the match, you'd
then have to get the display name from there, and assign it to
p.Label. Below is my code when selecting a contact from my list,
could someone help me do this. I am very new to .NET. Thanks
If rbBuddy.Checked = True Then
Dim myContacts() As LocatableContact
myContacts = Session("myContacts")
Dim li As ListItem
Dim al As ArrayList = New ArrayList
Dim cnt As Integer = -1
For Each li In lstBuddies.Items
cnt = cnt + 1
If li.Selected = True Then
al.Add(mycontacts(cnt).DomainAlias)
End If
Next
Dim users(al.Count - 1) As String
users = al.ToArray(GetType(String))
Try
posResults = locService.GetPositions(users)
If posResults.PositionsFound <= 0 Then
lblMessage.Text = "Problem finding."
Else
Dim pr As Position
Dim local As New ArrayList
Dim l As Location = New Location
For Each pr In posResults.Positions
If pr.ResultCode =
PositionResultCode.Succeeded Then
Dim p As New Pushpin
p.Label = pr.DomainAlias
p.LatLong = pr.LatLong
'p.IconDataSource =
"MapPoint.Icons"
'p.IconName = "152"
'prgjr1 - use our custom icons
p.IconDataSource =
"Rite_Aid.8792"
p.IconName = "mobile_phone"
p.PinID = "pinid"
pins.Add(p)
l = New Location
l.LatLong = New LatLong
l.LatLong = pr.LatLong
local.Add(l)
End If
Next
lblMessage.Text = "Found Location!"
Dim myRenderService As New RenderServiceSoap
myRenderService =
Session("myRenderService")
Dim ds As String
ds = lstDatasource.SelectedValue
mv = myRenderService.GetBestMapView( _
local.ToArray(GetType(Location)),
ds).ByHeightWidth
'mv.CenterPoint =
posResults.Positions(0).LatLong
'mv.Height = 1.0
'mv.Width = 1.0
'lstZoom.SelectedIndex = 2
End If
Catch ex As Exception
lblMessage.Text = "Error Finding Buddies. Try
again in a few minutes." '& ex.ToString
End Try
End If
[/code]
have this working, but when I select a user to locate from my contact
list, it comes back with a map, but the pushpin has the users
domain\username as the pin label. I would lik to show the person's
display name instead. I was told I need to iterate through my array
of locatable contacts, performing a string compare of pr.DomainAlias
to LocatableContact.DomainAlias. When I find the match, you'd
then have to get the display name from there, and assign it to
p.Label. Below is my code when selecting a contact from my list,
could someone help me do this. I am very new to .NET. Thanks
If rbBuddy.Checked = True Then
Dim myContacts() As LocatableContact
myContacts = Session("myContacts")
Dim li As ListItem
Dim al As ArrayList = New ArrayList
Dim cnt As Integer = -1
For Each li In lstBuddies.Items
cnt = cnt + 1
If li.Selected = True Then
al.Add(mycontacts(cnt).DomainAlias)
End If
Next
Dim users(al.Count - 1) As String
users = al.ToArray(GetType(String))
Try
posResults = locService.GetPositions(users)
If posResults.PositionsFound <= 0 Then
lblMessage.Text = "Problem finding."
Else
Dim pr As Position
Dim local As New ArrayList
Dim l As Location = New Location
For Each pr In posResults.Positions
If pr.ResultCode =
PositionResultCode.Succeeded Then
Dim p As New Pushpin
p.Label = pr.DomainAlias
p.LatLong = pr.LatLong
'p.IconDataSource =
"MapPoint.Icons"
'p.IconName = "152"
'prgjr1 - use our custom icons
p.IconDataSource =
"Rite_Aid.8792"
p.IconName = "mobile_phone"
p.PinID = "pinid"
pins.Add(p)
l = New Location
l.LatLong = New LatLong
l.LatLong = pr.LatLong
local.Add(l)
End If
Next
lblMessage.Text = "Found Location!"
Dim myRenderService As New RenderServiceSoap
myRenderService =
Session("myRenderService")
Dim ds As String
ds = lstDatasource.SelectedValue
mv = myRenderService.GetBestMapView( _
local.ToArray(GetType(Location)),
ds).ByHeightWidth
'mv.CenterPoint =
posResults.Positions(0).LatLong
'mv.Height = 1.0
'mv.Width = 1.0
'lstZoom.SelectedIndex = 2
End If
Catch ex As Exception
lblMessage.Text = "Error Finding Buddies. Try
again in a few minutes." '& ex.ToString
End Try
End If
[/code]