private void ShowEvents() { IList <Event> eventsList = databaseClass.GetEventsList(); //eventsListPerDay = TransformToEventsListPerDay(eventsList); IEnumerable <Event> queryeventsListPerDay = eventsList.OrderBy(evt => evt.DateFrom); eventsListPerDay = queryeventsListPerDay.ToList(); string[] Month = { "Jan", "Fev", "Mar", "Avr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" }; DateTime ThisDay = eventsListPerDay[0].DateFrom; //create panoramaItem and the ListBox List <ListBox> Listlistbox = new List <ListBox>(); Listlistbox.Add(new ListBox()); List <PivotItem> Listpivotitem = new List <PivotItem>(); Listpivotitem.Add(new PivotItem()); Listpivotitem[0].Header = ThisDay.DayOfWeek.ToString().Substring(0, 3) + "," + Month[ThisDay.Month - 1] + " " + ThisDay.Day.ToString(); Listpivotitem[0].Content = Listlistbox[0]; pivotControl.Items.Add(Listpivotitem[0]); int listboxindex = 0; for (int i = 0; i < eventsListPerDay.Count; i++)// Event evnt in eventsListPerDay) { //look for events of today from EventsList Event evnt = eventsListPerDay[i]; TextBlock textBlockHour = new TextBlock(); textBlockHour.Text = evnt.DateFrom.Hour.ToString() + ":" + evnt.DateFrom.Minute.ToString() + " to " + evnt.DateTo.Hour.ToString() + ":" + evnt.DateTo.Minute.ToString(); textBlockHour.Foreground = new SolidColorBrush(Colors.Magenta); textBlockHour.FontSize = 20; TextBlock textBlockNameAndPlace = new TextBlock(); textBlockNameAndPlace.Text = evnt.EventName.ToString() + "\n " + evnt.EventPlace.ToString(); textBlockNameAndPlace.Foreground = new SolidColorBrush(Colors.White); textBlockNameAndPlace.FontSize = 20; StackPanel stackPanel1 = new StackPanel(); stackPanel1.Width = 311; stackPanel1.Children.Add(textBlockHour); stackPanel1.Children.Add(textBlockNameAndPlace); Button button = new Button(); button.Background = new SolidColorBrush(Colors.Red); button.Height = 100; button.Width = 90; button.BorderThickness = new Thickness(0, 0, 0, 0); button.Margin = new Thickness(0, 0, 9, 0); button.Name = eventsListPerDay[i].EventID.ToString(); button.Click += new RoutedEventHandler(button_Click); StackPanel stackPanel2 = new StackPanel(); stackPanel2.Orientation = System.Windows.Controls.Orientation.Horizontal; stackPanel2.Children.Add(button); stackPanel2.Children.Add(stackPanel1); if (evnt.DateFrom.Day == ThisDay.Day) { Listlistbox[listboxindex].Items.Add(stackPanel2); } else { listboxindex++; ThisDay = eventsListPerDay[i].DateFrom; i--; Listpivotitem.Add(new PivotItem()); Listpivotitem[listboxindex].Header = ThisDay.DayOfWeek.ToString().Substring(0, 3) + "," + Month[ThisDay.Month - 1] + " " + ThisDay.Day.ToString(); Listlistbox.Add(new ListBox()); Listpivotitem[listboxindex].Content = Listlistbox[listboxindex]; pivotControl.Items.Add(Listpivotitem[listboxindex]); } } }