Secondary Live Tiles in Windows Phone: Listing 1

MainPage.xaml.vb after modifications.

Partial Public Class MainPage
    Inherits PhoneApplicationPage

    ' Constructor
    Public Sub New()
        InitializeComponent()
        'UpdatePrimaryTile()
        CreatePrimarySecondaryTile()
    End Sub

    Public Sub UpdatePrimaryTile()

        Dim PrimaryTile As ShellTile = ShellTile.ActiveTiles.First()
        Dim index As Int32

        While (True)
            For index = 1 To 3

                If PrimaryTile IsNot Nothing Then
                    Dim NewTile As New StandardTileData()

                    NewTile.BackgroundImage = New Uri("CustomTiles/AltPrimaryTile" + index.ToString() + ".png", UriKind.Relative)
                    NewTile.Count = System.DateTime.Now.Second.ToString()
                    NewTile.Title = System.DateTime.Now.ToString()
                    PrimaryTile.Update(NewTile)
                End If

                System.Threading.Thread.Sleep(5000)

            Next
        End While

    End Sub

    Public Sub CreatePrimarySecondaryTile()
        Dim SecondaryTile As ShellTile = ShellTile.ActiveTiles.FirstOrDefault(Function(x) x.NavigationUri.ToString().Contains("MainPage.xaml"))

        If SecondaryTile Is Nothing Then
            Dim FullTile As New StandardTileData()

            '*** Primary Tile Properties ***
            FullTile.BackgroundImage = New Uri("CustomTiles/AltPrimaryTile1.png", UriKind.Relative)
            FullTile.Count = System.DateTime.Now.Second.ToString()
            FullTile.Title = "Front Title"

            '*** Secondary Tile Properties ***
            FullTile.BackBackgroundImage = New Uri("CustomTiles/AltPrimaryTile2.png", UriKind.Relative)
            FullTile.BackContent = "Back Content"
            FullTile.BackTitle = "Back Title"

            ShellTile.Create(New Uri("/MainPage.xaml", UriKind.Relative), FullTile)
        End If

    End Sub

End Class

About the Author

Sam Nasr has been a software developer since 1995, focusing mostly on Microsoft technologies. Having achieved multiple certifications from Microsoft (MCAD, MCTS(MOSS), and MCT), Sam develops, teaches, and tours the country to present various topics in .Net Framework. He is also actively involved with the Cleveland C#/VB.Net User Group, where he has been the group leader since 2003. In addition, he also started the Cleveland WPF Users Group in June 2009, and the Cleveland .Net Study Group in August 2009, and is the INETA mentor for Ohio. When not coding, Sam loves spending time with his family and friends or volunteering at his local church. He can be reached by email at sam@nasr.info.