what I'm trying to do is to show the corresponding events of the day in the CalendarViewDayItem of my CalendarView.
My AppointmentClass:
public class CalJobItemVM : ViewModelBase
{
public CalJobItemVM() { }
public CalJobItemVM(ServiceJob serviceJob)
{
Title = serviceJob.EON
Date = serviceJob.StartDate
}
private string _title;
public string Title
{
get { return _title; }
set { Set(ref _title, value); }
}
private DateTimeOffset _date;
public DateTimeOffset Date
{
get { return _date; }
set { Set(ref _date, value); }
}
}
in my page.Resources I have the following construct:
<Style TargetType="CalendarViewDayItem">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="CalendarViewDayItem">
<ListView>
<ListView.ItemTemplate>
<DataTemplate>
<Grid Height="26" HorizontalAlignment="Stretch">
<TextBlock Text="{Binding Title}"/>
</Grid>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
In theory, I would like to bind List to ItemsSource for CalendarView and depending on Date, a list of assignments should be added to ItemsSource for CalendarViewDayItem. Unfortunately, I did not find any claim in this. The binding structure should be like this:
CalendarView (ItemsSource = List<CalJobItemVM>())
|-> CalendarViewDayItem (ItemsSource = CalendarView.ItemsSource.Where(x=>x.Date == CalendarViewDayItem.Date)
|-> ListView (ItemsSource = CalendarViewDayItem.ItemsSource)
OR
CalendarView (ItemsSource = List<CalJobItemVM>())
|-> ListView (ItemsSource = CalendarView.ItemsSource.Where(x=>x.Date == ParentControl.Date)
OR to overwrite the ItemsSource ListView, which it filters the returned CalJobItemMV collection, filtered by the Date value of its ParentControl (CalendarViewDayItem) value.
, CalendarView CalendarViewDayItem ItemsSource, , ItemsSource.
( -) .