C# and WPF Calendar Control

Sphiwe 1 Reputation point
2022-09-14T19:01:01.247+00:00

I want to be able to highlight multiple dates from a list in a calendar control on WPF.

Windows Presentation Foundation
Windows Presentation Foundation
A part of the .NET Framework that provides a unified programming model for building line-of-business desktop applications on Windows.
2,667 questions
0 comments No comments
{count} votes

1 answer

Sort by: Most helpful
  1. Hui Liu-MSFT 38,026 Reputation points Microsoft Vendor
    2022-09-15T02:36:29.873+00:00

    Hi,@Sphiwe . Welcome Microsoft Q&A. For highlighting multiple dates on the calendar, you could refer to the code below.

    Xaml:
    241229-highlight-multiple-days-on-calendar.txt
    Codebehind:

     public class MainViewModel  
        {  
            public List<DateTime> Dates { get; } = new List<DateTime>();  
      
            public MainViewModel()  
            {  
                this.Dates.Add(DateTime.Today);  
                this.Dates.Add(DateTime.Today.AddDays(1));  
                this.Dates.Add(DateTime.Today.AddDays(5));  
                this.Dates.Add(DateTime.Today.AddDays(-3));  
            }  
        }  
        public class MyCalendarConverter : IMultiValueConverter  
        {  
            public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture)  
            {  
                var date = (DateTime)values[0];  
                var dates = values[1] as List<DateTime>;  
                return dates.Contains(date);  
            }  
            public object[] ConvertBack(object value, Type[] targetTypes, object parameter, CultureInfo culture)  
            {  
                throw new NotImplementedException();  
            }  
        }  
    

    ----------------------------------------------------------------------------

    If the response is helpful, please click "Accept Answer" and upvote it.
    Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.