syncfusion-wpf-scheduler

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

WPF Scheduler (SfScheduler) Implementation

WPF Scheduler(SfScheduler)实现指南

The WPF Scheduler (SfScheduler) is a comprehensive scheduling control for managing appointments through an intuitive user interface similar to Outlook calendar. It provides eight different view types, appointment management, resource grouping, drag-and-drop, recurrence patterns, timezone support, and extensive customization options.
WPF Scheduler(SfScheduler)是一款功能全面的调度控件,通过类似Outlook日历的直观用户界面管理预约。它提供8种不同的视图类型、预约管理、资源分组、拖放功能、重复预约规则、时区支持以及丰富的自定义选项。

When to Use This Skill

适用场景

Use this skill when the user needs to:
  • Implement calendar or scheduler functionality in WPF applications
  • Create appointment management systems
  • Build resource scheduling applications
  • Implement meeting or event management interfaces
  • Add Outlook-like calendar views to applications
  • Schedule and manage recurring appointments
  • Handle multi-resource scheduling scenarios
  • Display appointments across different timezones
  • Implement drag-and-drop appointment rescheduling
  • Create custom appointment editors or views
当用户需要以下功能时,可使用该技能:
  • 在WPF应用中实现日历或调度功能
  • 搭建预约管理系统
  • 构建资源调度类应用
  • 实现会议或活动管理界面
  • 为应用添加类Outlook的日历视图
  • 调度和管理重复预约
  • 处理多资源调度场景
  • 跨不同时区显示预约
  • 实现预约拖放重调度功能
  • 创建自定义预约编辑器或视图

Component Overview

组件概述

Key Capabilities:
  • 8 Built-in Views: Day, Week, WorkWeek, Month, TimelineDay, TimelineWeek, TimelineWorkWeek, TimelineMonth
  • Appointment Management: Normal, all-day, spanned, and recurring appointments with full CRUD operations
  • Resource Scheduling: Multi-resource support with grouping by resource or date
  • Drag-and-Drop: Intuitive appointment rescheduling with visual feedback
  • Recurrence Patterns: Daily, weekly, monthly, yearly with exception handling
  • Timezone Support: Multiple timezone handling with automatic DST adjustments
  • Built-in Editor: Appointment creation and editing with validation
  • Customization: Extensive styling, templates, and appearance options
  • Accessibility: WCAG compliance with full keyboard navigation
  • Advanced Features: Load-on-demand, reminders, localization
核心功能:
  • 8种内置视图:Day、Week、WorkWeek、Month、TimelineDay、TimelineWeek、TimelineWorkWeek、TimelineMonth
  • 预约管理:支持普通、全天、跨天和重复预约,包含完整的CRUD操作
  • 资源调度:多资源支持,可按资源或日期分组
  • 拖放功能:带视觉反馈的直观预约重调度
  • 重复规则:支持每日、每周、每月、每年重复,包含异常处理
  • 时区支持:多时区处理,自动调整夏令时
  • 内置编辑器:带验证的预约创建与编辑功能
  • 自定义选项:丰富的样式、模板和外观配置
  • 可访问性:符合WCAG标准,支持全键盘导航
  • 高级功能:按需加载、提醒、本地化

Documentation and Navigation Guide

文档与导航指南

Getting Started

快速入门

📄 Read: references/getting-started.md
  • Assembly deployment and NuGet packages
  • Creating basic scheduler application (Designer, XAML, C#)
  • Basic appointment setup and configuration
  • First day of week and theme support
  • Initial setup and quick start examples
📄 阅读文档references/getting-started.md
  • 程序集部署与NuGet包
  • 创建基础调度应用(设计器、XAML、C#)
  • 基础预约设置与配置
  • 一周起始日与主题支持
  • 初始设置与快速入门示例

Views and Display

视图与显示

📄 Read: references/scheduler-views.md
  • Available view types (Day, Week, Month, Timeline variants)
  • ViewType property and switching between views
  • View-specific features and rendering
  • Current date display
📄 Read: references/view-customization.md
  • Time interval and slot height customization
  • Working days and hours configuration
  • Special time regions (lunch breaks, holidays)
  • Selection restrictions in timeslots
📄 阅读文档references/scheduler-views.md
  • 可用视图类型(Day、Week、Month及时间线变体)
  • ViewType属性与视图切换
  • 视图专属功能与渲染
  • 当前日期显示
📄 阅读文档references/view-customization.md
  • 时间间隔与槽高度定制
  • 工作日与工作小时配置
  • 特殊时间段(午休、节假日)
  • 时间槽选择限制

Appointments and Data

预约与数据

📄 Read: references/appointments.md
  • ScheduleAppointment class and properties
  • Creating and managing appointments
  • ItemSource and AppointmentMapping
  • Custom business objects and data binding
  • All-day and spanned appointments
  • Recurrence appointments and patterns (RRULE)
  • Recurrence exceptions
📄 Read: references/appointment-editing.md
  • Built-in appointment editor
  • Creating, editing, and deleting appointments via UI
  • Editor customization and validation
  • Editor events and custom logic
📄 Read: references/appointment-drag-drop.md
  • Drag-and-drop functionality
  • Rescheduling appointments
  • Drag-drop restrictions and events
📄 阅读文档references/appointments.md
  • ScheduleAppointment类与属性
  • 预约的创建与管理
  • ItemSource与AppointmentMapping
  • 自定义业务对象与数据绑定
  • 全天与跨天预约
  • 重复预约与规则(RRULE)
  • 重复预约异常处理
📄 阅读文档references/appointment-editing.md
  • 内置预约编辑器
  • 通过UI创建、编辑和删除预约
  • 编辑器定制与验证
  • 编辑器事件与自定义逻辑
📄 阅读文档references/appointment-drag-drop.md
  • 拖放功能
  • 预约重调度
  • 拖放限制与事件

Resource Management

资源管理

📄 Read: references/resource-grouping.md
  • Resource concepts and SchedulerResource class
  • ResourceGroupType (Resource vs Date grouping)
  • Assigning resources to appointments
  • Multi-resource scheduling
  • Resource appearance customization
📄 阅读文档references/resource-grouping.md
  • 资源概念与SchedulerResource类
  • ResourceGroupType(按资源/日期分组)
  • 为预约分配资源
  • 多资源调度
  • 资源外观定制

Calendar and Time Management

日历与时间管理

📄 Read: references/calendar-types.md
  • Calendar systems (Gregorian, custom)
  • Calendar configuration
📄 Read: references/date-navigation.md
  • DisplayDate property
  • Programmatic navigation methods
  • Date change events
📄 Read: references/timezones.md
  • Scheduler and appointment timezones
  • Automatic timezone conversion
  • Daylight saving time handling
  • Multi-timezone scheduling scenarios
📄 阅读文档references/calendar-types.md
  • 日历系统(公历、自定义)
  • 日历配置
📄 阅读文档references/date-navigation.md
  • DisplayDate属性
  • 程序化导航方法
  • 日期变更事件
📄 阅读文档references/timezones.md
  • 调度器与预约时区
  • 自动时区转换
  • 夏令时处理
  • 多时区调度场景

UI Customization

UI定制

📄 Read: references/ui-features.md
  • Header customization and templates
  • Context menu and commands
  • Busy indicator
  • Selection modes and events
📄 阅读文档references/ui-features.md
  • 头部定制与模板
  • 上下文菜单与命令
  • 忙碌指示器
  • 选择模式与事件

Advanced Features

高级功能

📄 Read: references/advanced-features.md
  • Accessibility (WCAG, keyboard navigation)
  • Localization and culture-specific formatting
  • Load on demand for large datasets
  • Reminders and notifications
  • Migration from SfSchedule to SfScheduler
📄 阅读文档references/advanced-features.md
  • 可访问性(WCAG、键盘导航)
  • 本地化与特定文化格式
  • 大数据集按需加载
  • 提醒与通知
  • 从SfSchedule迁移到SfScheduler

Quick Start Example

快速入门示例

Basic Scheduler with Appointments

带预约的基础调度器

XAML:
xaml
<Window xmlns:syncfusion="http://schemas.syncfusion.com/wpf">
    <syncfusion:SfScheduler x:Name="Schedule" 
                            ViewType="Week"
                            FirstDayOfWeek="Sunday" />
</Window>
C# Code-Behind:
csharp
using Syncfusion.UI.Xaml.Scheduler;

public MainWindow()
{
    InitializeComponent();
    
    // Create appointment collection
    var appointments = new ScheduleAppointmentCollection();
    
    // Add sample appointment
    appointments.Add(new ScheduleAppointment
    {
        StartTime = DateTime.Now.Date.AddHours(10),
        EndTime = DateTime.Now.Date.AddHours(12),
        Subject = "Client Meeting",
        Location = "Conference Room A",
        Notes = "Discuss project timeline",
        AppointmentBackground = Brushes.LightBlue
    });
    
    Schedule.ItemsSource = appointments;
}
XAML:
xaml
<Window xmlns:syncfusion="http://schemas.syncfusion.com/wpf">
    <syncfusion:SfScheduler x:Name="Schedule" 
                            ViewType="Week"
                            FirstDayOfWeek="Sunday" />
</Window>
C#后台代码:
csharp
using Syncfusion.UI.Xaml.Scheduler;

public MainWindow()
{
    InitializeComponent();
    
    // 创建预约集合
    var appointments = new ScheduleAppointmentCollection();
    
    // 添加示例预约
    appointments.Add(new ScheduleAppointment
    {
        StartTime = DateTime.Now.Date.AddHours(10),
        EndTime = DateTime.Now.Date.AddHours(12),
        Subject = "客户会议",
        Location = "A会议室",
        Notes = "讨论项目时间线",
        AppointmentBackground = Brushes.LightBlue
    });
    
    Schedule.ItemsSource = appointments;
}

Common Patterns

常见实现模式

Pattern 1: Custom Appointments with Data Binding

模式1:带数据绑定的自定义预约

csharp
// Custom business object
public class Meeting : INotifyPropertyChanged
{
    public string EventName { get; set; }
    public DateTime From { get; set; }
    public DateTime To { get; set; }
    public Brush Color { get; set; }
    public bool IsAllDay { get; set; }
}

// ViewModel
public class SchedulerViewModel
{
    public ObservableCollection<Meeting> Events { get; set; }
    
    public SchedulerViewModel()
    {
        Events = new ObservableCollection<Meeting>
        {
            new Meeting
            {
                EventName = "Team Standup",
                From = DateTime.Now.Date.AddHours(9),
                To = DateTime.Now.Date.AddHours(9.5),
                Color = Brushes.Green,
                IsAllDay = false
            }
        };
    }
}
XAML:
xaml
<syncfusion:SfScheduler x:Name="Schedule" 
                        ViewType="Week"
                        ItemsSource="{Binding Events}">
    <syncfusion:SfScheduler.AppointmentMapping>
        <syncfusion:AppointmentMapping
            Subject="EventName"
            StartTime="From"
            EndTime="To"
            AppointmentBackground="Color"
            IsAllDay="IsAllDay" />
    </syncfusion:SfScheduler.AppointmentMapping>
</syncfusion:SfScheduler>
csharp
// 自定义业务对象
public class Meeting : INotifyPropertyChanged
{
    public string EventName { get; set; }
    public DateTime From { get; set; }
    public DateTime To { get; set; }
    public Brush Color { get; set; }
    public bool IsAllDay { get; set; }
}

// 视图模型
public class SchedulerViewModel
{
    public ObservableCollection<Meeting> Events { get; set; }
    
    public SchedulerViewModel()
    {
        Events = new ObservableCollection<Meeting>
        {
            new Meeting
            {
                EventName = "团队站会",
                From = DateTime.Now.Date.AddHours(9),
                To = DateTime.Now.Date.AddHours(9.5),
                Color = Brushes.Green,
                IsAllDay = false
            }
        };
    }
}
XAML:
xaml
<syncfusion:SfScheduler x:Name="Schedule" 
                        ViewType="Week"
                        ItemsSource="{Binding Events}">
    <syncfusion:SfScheduler.AppointmentMapping>
        <syncfusion:AppointmentMapping
            Subject="EventName"
            StartTime="From"
            EndTime="To"
            AppointmentBackground="Color"
            IsAllDay="IsAllDay" />
    </syncfusion:SfScheduler.AppointmentMapping>
</syncfusion:SfScheduler>

Pattern 2: Recurring Weekly Meeting

模式2:每周重复会议

csharp
var recurringMeeting = new ScheduleAppointment
{
    StartTime = new DateTime(2026, 3, 24, 14, 0, 0), // Monday 2PM
    EndTime = new DateTime(2026, 3, 24, 15, 0, 0),
    Subject = "Weekly Status Meeting",
    // Recur every Monday for 12 weeks
    RecurrenceRule = "FREQ=WEEKLY;BYDAY=MO;COUNT=12",
    AppointmentBackground = Brushes.Orange
};
csharp
var recurringMeeting = new ScheduleAppointment
{
    StartTime = new DateTime(2026, 3, 24, 14, 0, 0), // 周一14点
    EndTime = new DateTime(2026, 3, 24, 15, 0, 0),
    Subject = "每周状态会议",
    // 每周一重复,共12周
    RecurrenceRule = "FREQ=WEEKLY;BYDAY=MO;COUNT=12",
    AppointmentBackground = Brushes.Orange
};

Pattern 3: Resource-Based Scheduling

模式3:基于资源的调度

csharp
// Add resources
Schedule.ResourceCollection = new ObservableCollection<SchedulerResource>
{
    new SchedulerResource { Id = "1001", Name = "Dr. Smith", Background = Brushes.Blue },
    new SchedulerResource { Id = "1002", Name = "Dr. Jones", Background = Brushes.Green }
};

Schedule.ResourceGroupType = ResourceGroupType.Resource;

// Assign appointment to resource
var appointment = new ScheduleAppointment
{
    StartTime = DateTime.Now.AddHours(2),
    EndTime = DateTime.Now.AddHours(3),
    Subject = "Patient Consultation",
    ResourceIdCollection = new ObservableCollection<object> { "1001" }
};
csharp
// 添加资源
Schedule.ResourceCollection = new ObservableCollection<SchedulerResource>
{
    new SchedulerResource { Id = "1001", Name = "Smith医生", Background = Brushes.Blue },
    new SchedulerResource { Id = "1002", Name = "Jones医生", Background = Brushes.Green }
};

Schedule.ResourceGroupType = ResourceGroupType.Resource;

// 为资源分配预约
var appointment = new ScheduleAppointment
{
    StartTime = DateTime.Now.AddHours(2),
    EndTime = DateTime.Now.AddHours(3),
    Subject = "患者咨询",
    ResourceIdCollection = new ObservableCollection<object> { "1001" }
};

Pattern 4: Timezone-Aware Appointments

模式4:时区感知型预约

csharp
var globalMeeting = new ScheduleAppointment
{
    StartTime = new DateTime(2026, 3, 25, 10, 0, 0),
    EndTime = new DateTime(2026, 3, 25, 11, 0, 0),
    Subject = "Global Team Sync",
    StartTimeZone = "Pacific Standard Time",
    EndTimeZone = "Pacific Standard Time"
};

// Scheduler displays in local timezone automatically
Schedule.TimeZone = TimeZoneInfo.Local.Id;
csharp
var globalMeeting = new ScheduleAppointment
{
    StartTime = new DateTime(2026, 3, 25, 10, 0, 0),
    EndTime = new DateTime(2026, 3, 25, 11, 0, 0),
    Subject = "全球团队同步会议",
    StartTimeZone = "Pacific Standard Time",
    EndTimeZone = "Pacific Standard Time"
};

// 调度器自动以本地时区显示
Schedule.TimeZone = TimeZoneInfo.Local.Id;

Key Properties Overview

核心属性概览

Core Properties

基础属性

PropertyTypeDescriptionDefault
ViewTypeSchedulerViewTypeSets the view (Day, Week, WorkWeek, Month, TimelineDay, TimelineWeek, TimelineWorkWeek, TimelineMonth)Month
ItemsSourceIEnumerableAppointment collection to displaynull
DisplayDateDateTimeCurrently displayed dateDateTime.Now
SelectedDateDateTimeCurrently selected dateDateTime.Now
FirstDayOfWeekDayOfWeekStarting day of the weekSunday
TimeZonestringScheduler's timezone identifierLocal
属性类型描述默认值
ViewTypeSchedulerViewType设置日历视图类型(Day、Week、WorkWeek、Month、TimelineDay、TimelineWeek、TimelineWorkWeek、TimelineMonth)Month
ItemsSourceIEnumerable要显示的预约集合null
DisplayDateDateTime当前显示的日期DateTime.Now
SelectedDateDateTime当前选中的日期DateTime.Now
FirstDayOfWeekDayOfWeek一周的起始日Sunday
TimeZonestring调度器的时区标识符Local

View Navigation & Configuration

视图导航与配置

PropertyTypeDescriptionDefault
AllowedViewTypesSchedulerViewTypeAllowed view types for navigationAll
AllowViewNavigationboolEnable/disable view navigationtrue
ShowDatePickerButtonboolShow date picker button in headertrue
属性类型描述默认值
AllowedViewTypesSchedulerViewType允许导航的视图类型全部
AllowViewNavigationbool启用/禁用视图导航true
ShowDatePickerButtonbool在头部显示日期选择按钮true

Date Range Properties

日期范围属性

PropertyTypeDescriptionDefault
MinimumDateDateTimeMinimum date that can be displayedDateTime.MinValue
MaximumDateDateTimeMaximum date that can be displayedDateTime.MaxValue
BlackoutDatesObservableCollection<DateTime>Dates where interaction is disabled (TimelineMonth only)null
属性类型描述默认值
MinimumDateDateTime可显示的最小日期DateTime.MinValue
MaximumDateDateTime可显示的最大日期DateTime.MaxValue
BlackoutDatesObservableCollection<DateTime>禁用交互的日期(仅TimelineMonth视图支持)null

Data Binding & Mapping

数据绑定与映射

PropertyTypeDescriptionDefault
AppointmentMappingAppointmentMappingMaps custom objects to ScheduleAppointment propertiesnull
ResourceMappingResourceMappingMaps custom objects to SchedulerResource propertiesnull
属性类型描述默认值
AppointmentMappingAppointmentMapping将自定义对象映射到ScheduleAppointment属性null
ResourceMappingResourceMapping将自定义对象映射到SchedulerResource属性null

Header Customization

头部定制

PropertyTypeDescriptionDefault
HeaderHeightdoubleHeight of the scheduler header50
HeaderDateFormatstringDate format string in header"MMMM yyyy"
HeaderTemplateDataTemplateCustom template for headernull
属性类型描述默认值
HeaderHeightdouble调度器头部高度50
HeaderDateFormatstring头部日期格式字符串"MMMM yyyy"
HeaderTemplateDataTemplate自定义头部模板null

Resource Scheduling

资源调度

PropertyTypeDescriptionDefault
ResourceCollectionObservableCollection<SchedulerResource>Collection of scheduler resourcesnull
ResourceGroupTypeResourceGroupTypeGrouping mode (Resource, Date, None)None
ResourceHeaderTemplateDataTemplateCustom template for resource headersnull
ResourceHeaderTemplateSelectorDataTemplateSelectorTemplate selector for resource headersnull
属性类型描述默认值
ResourceCollectionObservableCollection<SchedulerResource>调度器资源集合null
ResourceGroupTypeResourceGroupType分组模式(Resource、Date、None)None
ResourceHeaderTemplateDataTemplate自定义资源头部模板null
ResourceHeaderTemplateSelectorDataTemplateSelector资源头部模板选择器null

View-Specific Settings

视图专属设置

PropertyTypeDescriptionDefault
DaysViewSettingsDaysViewSettingsSettings for Day/Week/WorkWeek viewsDefault
MonthViewSettingsMonthViewSettingsSettings for Month viewDefault
TimelineViewSettingsTimelineViewSettingsSettings for Timeline viewsDefault
属性类型描述默认值
DaysViewSettingsDaysViewSettingsDay/Week/WorkWeek视图设置默认值
MonthViewSettingsMonthViewSettingsMonth视图设置默认值
TimelineViewSettingsTimelineViewSettings时间线视图设置默认值

Calendar & Culture

日历与文化

PropertyTypeDescriptionDefault
CalendarIdentifierstringCalendar system identifier (Gregorian, etc.)Gregorian
属性类型描述默认值
CalendarIdentifierstring日历系统标识符(如公历)Gregorian

UI & Interaction

UI与交互

PropertyTypeDescriptionDefault
ShowBusyIndicatorboolShows loading indicator during operationsfalse
EnableToolTipboolEnable tooltips on appointmentstrue
ToolTipTemplateDataTemplateCustom template for tooltipsnull
EnableReminderboolEnable reminder functionalityfalse
属性类型描述默认值
ShowBusyIndicatorbool操作期间显示加载指示器false
EnableToolTipbool启用预约工具提示true
ToolTipTemplateDataTemplate自定义工具提示模板null
EnableReminderbool启用提醒功能false

Context Menus

上下文菜单

PropertyTypeDescriptionDefault
AppointmentContextMenuContextMenuContext menu for appointmentsDefault
CellContextMenuContextMenuContext menu for cellsDefault
属性类型描述默认值
AppointmentContextMenuContextMenu预约上下文菜单默认值
CellContextMenuContextMenu单元格上下文菜单默认值

Drag & Drop

拖放

PropertyTypeDescriptionDefault
DragDropSettingsDragDropSettingsConfigure drag-drop behaviorDefault
属性类型描述默认值
DragDropSettingsDragDropSettings配置拖放行为默认值

Appointment Editing

预约编辑

PropertyTypeDescriptionDefault
AppointmentEditFlagAppointmentEditFlagControls which edit operations are allowedAll
AppointmentResizeControllerIAppointmentResizeControllerCustom resize behavior controllernull
属性类型描述默认值
AppointmentEditFlagAppointmentEditFlag控制允许的编辑操作全部
AppointmentResizeControllerIAppointmentResizeController自定义调整大小行为控制器null

Load On Demand

按需加载

PropertyTypeDescriptionDefault
LoadOnDemandCommandICommandCommand executed when loading appointments on demandnull
属性类型描述默认值
LoadOnDemandCommandICommand按需加载预约时执行的命令null

Key Methods

核心方法

MethodDescription
Forward()Navigate forward by one view interval
Backward()Navigate backward by one view interval
SchedulerDateToPoint(DateTime)Convert date to screen coordinates
PointToSchedulerDate(Point)Convert screen coordinates to date/time
方法描述
Forward()按一个视图间隔向前导航
Backward()按一个视图间隔向后导航
SchedulerDateToPoint(DateTime)将日期转换为屏幕坐标
PointToSchedulerDate(Point)将屏幕坐标转换为日期/时间

Key Events

核心事件

EventDescription
ViewChangedRaised when the view type changes
DisplayDateChangedRaised when the display date changes
SelectionChangedRaised when the selected date/appointment changes
CellTappedRaised when a cell is tapped/clicked
CellDoubleTappedRaised when a cell is double-clicked
CellLongPressedRaised when a cell is long-pressed
AppointmentTappedRaised when an appointment is tapped/clicked
AppointmentDoubleTappedRaised when an appointment is double-clicked
AppointmentDragStartingRaised when appointment drag begins (can be cancelled)
AppointmentDragOverRaised while dragging appointment over scheduler
AppointmentDropRaised when appointment is dropped
AppointmentResizeStartingRaised when appointment resize begins (can be cancelled)
AppointmentResizingRaised while appointment is being resized
AppointmentResizeCompletedRaised when appointment resize completes
AppointmentEditorOpeningRaised when appointment editor is opening (can be cancelled)
AppointmentEditorClosingRaised when appointment editor is closing (can be cancelled)
HeaderTappedRaised when header is tapped/clicked
事件描述
ViewChanged视图类型变更时触发
DisplayDateChanged显示日期变更时触发
SelectionChanged选中日期/预约变更时触发
CellTapped单元格被点击/轻触时触发
CellDoubleTapped单元格被双击时触发
CellLongPressed单元格被长按触发
AppointmentTapped预约被点击/轻触时触发
AppointmentDoubleTapped预约被双击时触发
AppointmentDragStarting预约开始拖放时触发(可取消)
AppointmentDragOver预约拖放经过调度器时触发
AppointmentDrop预约完成拖放时触发
AppointmentResizeStarting预约开始调整大小时触发(可取消)
AppointmentResizing预约调整大小过程中触发
AppointmentResizeCompleted预约调整大小完成时触发
AppointmentEditorOpening预约编辑器打开时触发(可取消)
AppointmentEditorClosing预约编辑器关闭时触发(可取消)
HeaderTapped头部被点击/轻触时触发

Common Use Cases

常见使用场景

  1. Meeting Room Scheduler - Manage conference room bookings with resource grouping
  2. Medical Appointments - Doctor scheduling with patient appointments and recurring slots
  3. Project Timeline - Track tasks, milestones, and team member assignments
  4. Event Calendar - Public event management with all-day and multi-day events
  5. Employee Shift Planning - Resource-based shift scheduling with drag-drop
  6. Class Schedule - Educational timetables with recurring sessions
  7. Service Booking - Appointment booking system with availability management
  1. 会议室调度器 - 按资源分组管理会议室预订
  2. 医疗预约系统 - 医生排班与患者预约,支持重复时段
  3. 项目时间线 - 跟踪任务、里程碑与团队成员分配
  4. 活动日历 - 管理公共活动,支持全天和多天事件
  5. 员工排班系统 - 基于资源的班次调度,支持拖放调整
  6. 课程表 - 教育类时间表,支持重复课程
  7. 服务预订系统 - 预约预订系统,包含可用性管理

Important Considerations

重要注意事项

  • Performance: Use LoadOnDemand for large datasets spanning multiple years
  • Data Binding: Custom objects must implement INotifyPropertyChanged for updates
  • Recurrence: Use RRULE format for recurrence patterns (standard RFC 5545)
  • Timezones: Always specify timezones for global applications
  • Resources: ResourceIdCollection must match ResourceCollection IDs
  • Views: Choose appropriate view based on use case (Day for detailed, Month for overview)
  • 性能优化:对于跨多年的大数据集,使用按需加载功能
  • 数据绑定:自定义对象必须实现INotifyPropertyChanged以支持更新
  • 重复预约:使用RRULE格式定义重复规则(遵循RFC 5545标准)
  • 时区处理:全球应用务必指定时区
  • 资源匹配:ResourceIdCollection必须与ResourceCollection中的ID匹配
  • 视图选择:根据使用场景选择合适的视图(Day视图用于详情,Month视图用于概览)

Next Steps

下一步行动

Start with Getting Started for installation and basic setup, then explore specific features based on your requirements using the navigation guide above.
快速入门开始学习安装与基础配置,然后根据需求通过上述导航指南探索特定功能。