Log In
Home
Support
Demos
Documentation
Blogs
Training
Webinars
[Expand]Welcome to DevExpress .NET Documentation
[Expand]WinForms Controls
[Expand]ASP.NET Controls and MVC Extensions
[Expand]ASP.NET Bootstrap Controls
[Expand]ASP.NET Core Bootstrap Controls
[Collapse]WPF Controls
  Prerequisites
 [Expand]What's Installed
 [Expand]Common Concepts
 [Expand]MVVM Framework
 [Collapse]Controls and Libraries
  [Expand]Windows and Utility Controls
   Dialogs, Notifications and Panels
   Reporting
  [Expand]Data Grid
  [Expand]Ribbon, Bars and Menu
  [Expand]Charts Suite
  [Expand]Pivot Grid
  [Collapse]Scheduler
   [Expand]Getting Started
   [Expand]Appointments
    Resources
    Reminders
   [Expand]Views
   [Expand]Visual Elements
   [Expand]Styles and Templates
   [Expand]Design-Time Features
    Time Zones
   [Expand]Data Binding
    Grouping
    Selecting
    Navigating
    Printing
    End-User Restrictions
   [Expand]Examples
    Migration Guidelines
  [Expand]Spreadsheet
  [Expand]Rich Text Editor
  [Expand]Tree List
  [Expand]Gauge Controls
  [Expand]Map Control
  [Expand]Layout Management
  [Expand]Windows Modern UI
  [Expand]Printing-Exporting
  [Expand]Data Editors
  [Expand]Navigation Controls
  [Expand]Spell Checker
  [Expand]Property Grid
  [Expand]PDF Viewer
  [Expand]TreeMap Control
  [Expand]Diagram Control
  [Expand]Scheduler (legacy)
 [Expand]Scaffolding Wizard
 [Expand]Localization
  Redistribution and Deployment
  Get More Help
 [Expand]API Reference
[Expand]Xamarin Controls
[Expand]Windows 10 App Controls
[Expand]Office File API
[Expand]Reporting
[Expand]Report Server
[Expand]Dashboard
[Expand]eXpressApp Framework
[Expand]CodeRush
[Expand]CodeRush Classic
[Expand]Cross-Platform Core Libraries
[Expand]Tools and Utilities
 End-User Documentation

End-User Restrictions

The SchedulerControl allows you to prevent end-users from creating or editing (deleting, dragging, etc.) appointments shown within the scheduling area. With the restriction applied, all corresponding UI elements, such as ribbon and popup menu items, are disabled.

Use AllowAppointments... properties to prohibit a specific action for all appointments. Handle the corresponding CustomAllow... event to manually specify when an action is allowed or restricted.

Note

The SchedulerControl uses the System.Windows.Input.CommandManager class to manage commands the ribbon or context menu items execute. The System.Windows.Input.CommandManager.RequerySuggested event is fired when any changes that can affect the command's ability to execute (for example, changing focus) are made. It notifies the command that it should raise the System.Windows.Input.ICommand.CanExecuteChanged event, which makes some CustomAllow... events fire as well. This chain of events can occur involuntarily, so make sure that the event handler does not contain any code that may affect the application's performance.

All the available properties and their corresponding events are listed below. These are all dependency properties.

Property Description Event
SchedulerControl.AllowAppointmentCreate Specifies whether creating new appointments is allowed. SchedulerControl.CustomAllowAppointmentCreate
SchedulerControl.AllowAppointmentEdit Determines whether editing existing appointments is allowed. SchedulerControl.CustomAllowAppointmentEdit
SchedulerControl.AllowAppointmentDelete Specifies whether deleting appointments is allowed. SchedulerControl.CustomAllowAppointmentDelete
SchedulerControl.AllowAppointmentConflicts Indicates whether sharing the schedule time between two or more appointments is allowed. SchedulerControl.CustomAllowAppointmentConflicts
SchedulerControl.AllowInplaceEditor Specifies whether invoking the inplace editor is allowed. SchedulerControl.CustomAllowInplaceEditor
SchedulerControl.AllowAppointmentResize Gets or sets whether resizing appointments is allowed. SchedulerControl.CustomAllowAppointmentResize
SchedulerControl.AllowAppointmentDrag Indicates whether dragging appointments is allowed. SchedulerControl.CustomAllowAppointmentDrag
SchedulerControl.AllowAppointmentDragBetweenResources Determines whether dragging appointments between resources is allowed. SchedulerControl.CustomAllowAppointmentDragBetweenResources
SchedulerControl.AllowAppointmentCopy Gets or sets whether copying appointments is allowed. SchedulerControl.CustomAllowAppointmentCopy
SchedulerControl.AllowAppointmentMultiSelect Specifies whether selecting more than one appointment is allowed.
SchedulerControl.AllowCellMultiSelect Indicates whether selecting more that one time cell is allowed.
SchedulerControl.AllowReminders Gets or sets whether appointment reminders are allowed.

The code sample below shows how to handle the SchedulerControl.CustomAllowAppointmentCreate event to restrict creating appointments for a specific time interval, and SchedulerControl.CustomAllowAppointmentConflicts event to prohibit dragging appointments to this time interval as well:

Show Me

A complete sample project is available in the DevExpress Code Examples database at http://www.devexpress.com/example=T565891.

Is this topic helpful?​​​​​​​