Working With Location in Windows Phone: Listing 3

XAML for a two-button grid.

<Grid x:Name="ContentPanel"
        Grid.Row="1"
        Margin="12,0,12,0">
    <Grid.Resources>
        <local:LocationViewModel x:Key="ViewModel" />
        <maps:ApplicationIdCredentialsProvider x:Key="Credentials"
                                                ApplicationId="{your key}" />
    </Grid.Resources>
    <Grid DataContext="{Binding Source={StaticResource ViewModel}}">
        <Grid.ColumnDefinitions>
            <ColumnDefinition />
            <ColumnDefinition />
        </Grid.ColumnDefinitions>
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto" />
            <RowDefinition />
        </Grid.RowDefinitions>
        <Button Content="Start Tracking">
            <i:Interaction.Triggers>
                <i:EventTrigger EventName="Click">
                    <ec:CallMethodAction TargetObject="{Binding}"
                                            MethodName="StartTracking" />
                </i:EventTrigger>
            </i:Interaction.Triggers>
        </Button>
        <Button Content="Stop Tracking"
                Grid.Column="1">
            <i:Interaction.Triggers>
                <i:EventTrigger EventName="Click">
                    <ec:CallMethodAction TargetObject="{Binding}"
                                            MethodName="StopTracking" />
                </i:EventTrigger>
            </i:Interaction.Triggers>
        </Button>
        <Border Grid.Row="1"
                Grid.ColumnSpan="2"
                BorderBrush="{Binding LocationTrackingBrush}"
                BorderThickness="{StaticResource PhoneMargin}">
            <maps:Map LogoVisibility="Collapsed"
                        CopyrightVisibility="Collapsed"
                        CredentialsProvider="{StaticResource Credentials}">
                <maps:Pushpin Content="Here I Am!"
                                Location="{Binding CurrentLocation}" />
            </maps:Map>
        </Border>
    </Grid>
</Grid>

About the Author

Nick Randolph runs Built to Roam, a consulting company that specializes in training, mentoring and assisting other companies build mobile applications. With a heritage in rich client applications for both the desktop and a variety of mobile platforms, Nick currently presents, writes and educates on the Windows Phone platform.

comments powered by Disqus

Featured

  • Death of the Dev Machine?

    Here's a takeaway from this week's Ignite 2020 event: An advanced Azure cloud portends the death of the traditional, high-powered dev machine packed with computing, memory and storage components.

  • COVID-19 Is Ignite 2020's Elephant in the Room: 'Frankly, It Sucks'

    As in all things of our new reality, there was no escaping the drastic changes in routine caused by the COVID-19 pandemic during Microsoft's big Ignite 2020 developer/IT pro conference, this week shifted to an online-only event after drawing tens of thousands of in-person attendees in years past.

  • Visual Studio 2019 v16.8 Preview Update Adds Codespaces

    To coincide with the Microsoft Ignite 2020 IT pro/developer event, the Visual Studio dev team shipped a new update, Visual Studio 2019 v16.8 Preview 3.1, with the main attraction being support for cloud-hosted Codespaces, now in a limited beta.

  • Speed Lines Graphic

    New for Blazor: Azure Static Web Apps Support

    With Blazor taking the .NET web development world by storm, one of the first announcements during Microsoft's Ignite 2020 developer/IT event was its new support in Azure Static Web Apps.

  • Entity Framework Core 5 RC1 Is Feature Complete, Ready for Production

    The first release candidate for Entity Framework 5 -- Microsoft's object-database mapper for .NET -- has shipped with a go live license, ready for production.

Upcoming Events