skillZs
★ LIVE SKILL TAGS ★
>>> LIVE SKILLS INDEX <<<
* OPEN SOURCE *
NO LOGIN, NO TRACKING
※ REAL INSTALL DATA ※
← back to all skills
syncfusion/wpf-ui-components-skills138 installs

syncfusion-wpf-calendar

Guide to using the Syncfusion WPF CalendarEdit control for date selection and navigation. Use this skill whenever the user needs to implement calendar functionality, select dates, restrict date ranges, customize calendar appearance, or work with multi-date selection. Essential for building date picker interfaces, booking systems, scheduling applications, and any WPF project requiring calendar controls.

How do I install this agent skill?

npx skills add https://github.com/syncfusion/wpf-ui-components-skills --skill syncfusion-wpf-calendar
view source ↗

Is this agent skill safe to install?

  • Gen Agent Trust Hubpass

    The skill is a legitimate technical guide for implementing the Syncfusion WPF CalendarEdit control. It provides standard XAML and C# code snippets, documentation on properties, and styling guidelines. No security issues, malicious patterns, or suspicious dependencies were detected.

  • Socketpass

    No alerts

  • Snykpass

    Risk: LOW · No issues

What does this agent skill do?

WPF Calendar (CalendarEdit) Implementation Guide

The CalendarEdit control provides a comprehensive calendar UI for selecting and managing dates in WPF applications. It supports single and multiple date selection, date range restrictions, customizable appearance, and powerful navigation modes from day to decade views.

When to Use This Skill

  • Date Selection: When you need users to select single or multiple dates
  • Calendar UI: Building calendar controls with month/year navigation
  • Date Restrictions: Implementing date range constraints or blocking specific dates
  • Scheduling: Creating booking, appointment, or event selection interfaces
  • Date Manipulation: Using calendar methods for date arithmetic (add days, months, etc.)
  • Appearance Customization: Styling calendar colors, brushes, and visual properties
  • Multi-language Support: Supporting RTL (right-to-left) layouts and different cultures

Component Overview

Key Features:

  • Support for dates from year 0 to year 9999
  • Single and multiple date selection modes
  • Day, month, year, and decade navigation views
  • Min/max date constraints and blackout date blocking
  • Customizable colors, brushes, and animations
  • RTL and culture support
  • Built-in animation for smooth transitions

Documentation and Navigation Guide

Getting Started

📄 Read: references/getting-started.md

  • Installation and assembly setup
  • Adding CalendarEdit via designer, XAML, and C#
  • Basic control structure and initial setup

Date Selection

📄 Read: references/date-selection.md

  • Select single dates (mouse click and programmatically)
  • Select multiple dates (drag selection and Ctrl+click)
  • Working with Date and SelectedDates properties

Navigation Features

📄 Read: references/navigation.md

  • Navigate between day, month, year, and decade modes
  • Header navigation, keyboard shortcuts, and animation controls
  • Customizing header appearance and animation timing

Restrict Date Selection

📄 Read: references/restrict-dates.md

  • Set date range constraints (MinDate and MaxDate)
  • Hide or show disabled dates outside the range
  • Disable all date selection or block specific date ranges

Appearance & Customization

📄 Read: references/appearance.md

  • Customize foreground, background, and brush colors
  • RTL layout support and flow direction
  • Calendar object methods for date arithmetic operations

Quick Start

Basic XAML Setup

<Window x:Class="CalendarDemo.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:syncfusion="http://schemas.syncfusion.com/wpf"
        Title="Calendar Demo" Height="450" Width="500">
    <Grid>
        <!-- Basic calendar control -->
        <syncfusion:CalendarEdit Name="calendarEdit"
                                 Height="250"
                                 Width="300"
                                 VerticalAlignment="Center"
                                 HorizontalAlignment="Center"/>
    </Grid>
</Window>

Basic C# Setup

using Syncfusion.Windows.Shared;

CalendarEdit calendarEdit = new CalendarEdit();
calendarEdit.Height = 250;
calendarEdit.Width = 300;

// Get selected date
DateTime selectedDate = calendarEdit.Date;

// Set selected date programmatically
calendarEdit.Date = new DateTime(2024, 3, 15);

Common Patterns

Pattern 1: Single Date Selection with Range Restriction

// Allow only dates in March 2024
calendarEdit.MinDate = new DateTime(2024, 3, 1);
calendarEdit.MaxDate = new DateTime(2024, 3, 31);
calendarEdit.Date = new DateTime(2024, 3, 15);

// Get the selected date
DateTime selectedDate = calendarEdit.Date;

Pattern 2: Multiple Date Selection

// Enable multiple date selection
calendarEdit.AllowMultiplySelection = true;

// Select multiple dates by dragging or Ctrl+clicking
// Retrieve all selected dates
var selectedDates = calendarEdit.SelectedDates;

Pattern 3: Block Specific Dates (Blackout Dates)

// Block specific date ranges
calendarEdit.BlackoutDates.Add(new DateTime(2024, 3, 5));
calendarEdit.BlackoutDates.Add(new DateTime(2024, 3, 20));

// Users cannot select these dates
calendarEdit.Date = new DateTime(2024, 3, 15);

Pattern 4: Customize Calendar Appearance

using System.Windows.Media;

// Customize colors
calendarEdit.Foreground = Brushes.Blue;
calendarEdit.Background = Brushes.White;
calendarEdit.MouseOverForeground = Brushes.Red;
calendarEdit.MouseOverBackground = Brushes.Lavender;

// Customize header
calendarEdit.HeaderBackground = Brushes.Green;
calendarEdit.HeaderForeground = Brushes.Yellow;

Key Properties Reference

PropertyTypeDescription
DateDateTimeGets or sets the currently selected date
SelectedDatesCollectionGets all selected dates in multi-selection mode
AllowMultiplySelectionboolEnables or disables multiple date selection
MinDateDateTimeSets the earliest selectable date
MaxDateDateTimeSets the latest selectable date
BlackoutDatesCollectionContains dates that cannot be selected
DisableDateSelectionboolDisables date selection (month/year still selectable)
MinMaxHiddenboolHides dates outside MinDate/MaxDate range
HeaderBackgroundBrushCustomizes the header background color
HeaderForegroundBrushCustomizes the header text color
ChangeModeTimeintAnimation duration for mode changes (ms)
FrameMovingTimeintAnimation duration for month transitions (ms)

Next Steps: Choose a reference file above based on what you need to implement. Start with "Getting Started" if setting up CalendarEdit for the first time.

Add the canonical catalog link to the repository README so users can inspect current installs and available audits. The publishing guide covers the complete discovery path.

<a href="https://skillzs.dev/skills/syncfusion/wpf-ui-components-skills/syncfusion-wpf-calendar">View syncfusion-wpf-calendar on skillZs</a>