Calendar.xaml 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. <Calendar x:Class="CustomControls.Calendar"
  2. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  3. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  4. xmlns:local="clr-namespace:CustomControls">
  5. <Calendar.Resources>
  6. <local:LookupDatesConverter x:Key="HighlightDate" />
  7. <local:LookupAnnualDatesConverter x:Key="HighlightAnnualDate" />
  8. <local:LookupMonthDatesConverter x:Key="HighlightMonthDate" />
  9. </Calendar.Resources>
  10. <Calendar.CalendarDayButtonStyle>
  11. <Style TargetType="CalendarDayButton">
  12. <Setter Property="FontFamily" Value="{Binding FontFamily, RelativeSource={RelativeSource AncestorType={x:Type local:Calendar}}}" />
  13. <Setter Property="FontSize" Value="{Binding FontSize, RelativeSource={RelativeSource AncestorType={x:Type local:Calendar}}}" />
  14. <Setter Property="FontWeight" Value="{Binding FontWeight, RelativeSource={RelativeSource AncestorType={x:Type local:Calendar}}}" />
  15. <Style.Triggers>
  16. <DataTrigger Value="True">
  17. <DataTrigger.Binding>
  18. <MultiBinding Converter="{StaticResource HighlightDate}">
  19. <Binding />
  20. <Binding Path="DataContext.Dates" RelativeSource="{RelativeSource AncestorType={x:Type local:Calendar}}" />
  21. </MultiBinding>
  22. </DataTrigger.Binding>
  23. <Setter Property="FontWeight" Value="Bold" />
  24. </DataTrigger>
  25. <DataTrigger Value="True">
  26. <DataTrigger.Binding>
  27. <MultiBinding Converter="{StaticResource HighlightAnnualDate}">
  28. <Binding />
  29. <Binding Path="DataContext.AnnualDates" RelativeSource="{RelativeSource AncestorType={x:Type local:Calendar}}" />
  30. </MultiBinding>
  31. </DataTrigger.Binding>
  32. <Setter Property="FontWeight" Value="Bold" />
  33. </DataTrigger>
  34. <DataTrigger Value="True">
  35. <DataTrigger.Binding>
  36. <MultiBinding Converter="{StaticResource HighlightMonthDate}">
  37. <Binding />
  38. <Binding Path="DataContext.MonthDates" RelativeSource="{RelativeSource AncestorType={x:Type local:Calendar}}" />
  39. </MultiBinding>
  40. </DataTrigger.Binding>
  41. <Setter Property="FontWeight" Value="Bold" />
  42. </DataTrigger>
  43. </Style.Triggers>
  44. </Style>
  45. </Calendar.CalendarDayButtonStyle>
  46. </Calendar>