public void ShowDetail(int currentMonth, int day, SampleDataItem item) { PanchangData pdata = item.GetPanchangData(currentMonth, day); DateTime dateTime = new DateTime(item.Year, currentMonth, day); DateTextBlock.Text = dateTime.ToString("d"); SunriseTextBlock.Text= pdata._fieldValues[(int)FieldType.Sunrise]; SunsetTextBlock.Text = pdata._fieldValues[(int)FieldType.Sunset]; MoonRiseTextBlock.Text = pdata._fieldValues[(int)FieldType.Moonrise]; TamilYearTextBlock.Text = (pdata._fieldValues[(int)FieldType.TamilYear] == null) ? "None" : pdata._fieldValues[(int)FieldType.TamilYear]; NorthYearTextBlock.Text = pdata._fieldValues[(int)FieldType.NorthYear]; GujaratYearTextBlock.Text = pdata._fieldValues[(int)FieldType.GujaratYear]; AyanaTextBlock.Text = pdata._fieldValues[(int)FieldType.Ayana]; RituTextBlock.Text = pdata._fieldValues[(int)FieldType.Ritu]; VedicRituTextBlock.Text = pdata._fieldValues[(int)FieldType.VedicRitu]; TamilMonthTextBlock.Text = pdata._fieldValues[(int)FieldType.TamilMonth]; // there is a whitespace in front of this string SanskritMonthTextBlock.Text = (pdata._fieldValues[(int)FieldType.SanskritMonth]).Trim(); PakshaTextBlock.Text = (pdata._fieldValues[(int)FieldType.Paksha]).Trim(); TithiTextBlock.Text = pdata._fieldValues[(int)FieldType.Tithi]; NakshatraTextBlock.Text = pdata._fieldValues[(int)FieldType.Nakshatra]; YogaTextBlock.Text = pdata._fieldValues[(int)FieldType.Yoga]; KaranaTextBlock.Text = pdata._fieldValues[(int)FieldType.Karana]; SunRasiTextBlock.Text = pdata._fieldValues[(int)FieldType.SunRasi]; MoonRasiTextBlock.Text = pdata._fieldValues[(int)FieldType.MoonRasi]; RahuKalamTextBlock.Text = pdata._fieldValues[(int)FieldType.RahuKalam]; YamaKandamTextBlock.Text = pdata._fieldValues[(int)FieldType.YamaGandam]; GulikaiTextBlock.Text = pdata._fieldValues[(int)FieldType.Gulikai]; String festival = item.GetFestival(currentMonth, day); if (String.IsNullOrEmpty(festival)) { festival = "No data"; } FestivalTextBlock.Text = festival; PersonalEventListScroller.Visibility = Visibility.Collapsed; Separator.BorderThickness = new Thickness(0, 0, 0, 0); PersonalEventList.Items.Clear(); if (_privateEvents != null) { List<PrivateEvent> privateEventList = _privateEvents.GetEventsForDate(dateTime); foreach (PrivateEvent evt in privateEventList) { AddPrivateEvent(dateTime, evt._eventText, false, evt); } } }
// Update tile for today private void UpdateTile( SampleDataItem item, DateTime dueTime, DateTime expiryTime) { DateTime date = dueTime; int month = date.Month; int day = date.Day; String festival; var notifier = TileUpdateManager.CreateTileUpdaterForApplication(); Debug.WriteLine("Update tile {0} {1}", dueTime, expiryTime); festival = item.GetFestival(month, day); PanchangData pdata = item.GetPanchangData(month, day); // create the wide template ITileWideText01 tileContent = TileContentFactory.CreateTileWideText01(); tileContent.TextHeading.Text = date.ToString("d"); tileContent.TextBody1.Text = pdata._fieldValues[(int)FieldType.SanskritMonth]; tileContent.TextBody2.Text = pdata._fieldValues[(int)FieldType.TamilMonth]; tileContent.TextBody3.Text = festival; // create the square template and attach it to the wide template ITileSquareText01 squareContent = TileContentFactory.CreateTileSquareText01(); squareContent.TextHeading.Text = date.ToString("d"); squareContent.TextBody1.Text = pdata._fieldValues[(int)FieldType.SanskritMonth]; squareContent.TextBody2.Text = pdata._fieldValues[(int)FieldType.TamilMonth]; squareContent.TextBody3.Text = festival; tileContent.SquareContent = squareContent; // send the notification ScheduledTileNotification futureTile = new ScheduledTileNotification(tileContent.GetXml(), dueTime); futureTile.ExpirationTime = expiryTime; notifier.AddToSchedule(futureTile); // Send another notification. this gives a nice animation in mogo tileContent.TextBody1.Text = pdata._fieldValues[(int)FieldType.Paksha]; tileContent.TextBody2.Text = pdata._fieldValues[(int)FieldType.Tithi]; tileContent.TextBody3.Text = pdata._fieldValues[(int)FieldType.Nakshatra]; futureTile = new ScheduledTileNotification(tileContent.GetXml(), dueTime); futureTile.ExpirationTime = expiryTime; notifier.AddToSchedule(futureTile); Debug.WriteLine("Count of scheduled notifications {0}", notifier.GetScheduledTileNotifications().Count); }