property Calendar.AllowToggleSelectKey as AllowKeysEnum
Specifies the combination of keys to select multiple not-contiguously dates.

TypeDescription
AllowKeysEnum An AllowKeysEnum expression that specifies the combination of keys to select multiple not-contiguously dates.
By default, the AllowToggleSelectKey property is exCTRLKey. This indicates that the user toggles the selected dates to unselected, and reverse by clicking the CTRL key. This property should be used in combination with AllowSelectDate and AllowSelectDateRect properties. Once the user starts selecting a new date in the calendar panel, the control fires the LayoutStartChanging(exCalendarSelectionChange). Once a new date is selected, the LayoutEndChanging(exCalendarSelectionChange) event occurs. Use the Selection/SelectDate property to change programmatically the dates being selected in the calendar, including the dates to be shown in the schedule view. You can use the Selection/SelCount/SelDate property to retrieve the selected dates.

The samples shows how you can toggle the selection of dates, such the first click selects the date, the second click unselects it, and so on.

VBA (MS Access, Excell...)

With Schedule1
	.OnResizeControl = 1281
	With .Calendar
		.AllowToggleSelectKey = 1
		.AllowSelectDate = 1
		.SingleSel = False
	End With
End With

VB6

With Schedule1
	.OnResizeControl = OnResizeControlEnum.exResizePanelRight Or OnResizeControlEnum.exHideSplitter Or OnResizeControlEnum.exCalendarFit
	With .Calendar
		.AllowToggleSelectKey = exLeftClick
		.AllowSelectDate = exLeftClick
		.SingleSel = False
	End With
End With

VB.NET

With Exschedule1
	.OnResizeControl = exontrol.EXSCHEDULELib.OnResizeControlEnum.exResizePanelRight Or exontrol.EXSCHEDULELib.OnResizeControlEnum.exHideSplitter Or exontrol.EXSCHEDULELib.OnResizeControlEnum.exCalendarFit
	With .Calendar
		.AllowToggleSelectKey = exontrol.EXSCHEDULELib.AllowKeysEnum.exLeftClick
		.AllowSelectDate = exontrol.EXSCHEDULELib.AllowKeysEnum.exLeftClick
		.SingleSel = False
	End With
End With

VB.NET for /COM

With AxSchedule1
	.OnResizeControl = EXSCHEDULELib.OnResizeControlEnum.exResizePanelRight Or EXSCHEDULELib.OnResizeControlEnum.exHideSplitter Or EXSCHEDULELib.OnResizeControlEnum.exCalendarFit
	With .Calendar
		.AllowToggleSelectKey = EXSCHEDULELib.AllowKeysEnum.exLeftClick
		.AllowSelectDate = EXSCHEDULELib.AllowKeysEnum.exLeftClick
		.SingleSel = False
	End With
End With

C++

/*
	Copy and paste the following directives to your header file as
	it defines the namespace 'EXSCHEDULELib' for the library: 'ExSchedule 1.0 Control Library'

	#import <ExSchedule.dll>
	using namespace EXSCHEDULELib;
*/
EXSCHEDULELib::ISchedulePtr spSchedule1 = GetDlgItem(IDC_SCHEDULE1)->GetControlUnknown();
spSchedule1->PutOnResizeControl(EXSCHEDULELib::OnResizeControlEnum(EXSCHEDULELib::exResizePanelRight | EXSCHEDULELib::exHideSplitter | EXSCHEDULELib::exCalendarFit));
EXSCHEDULELib::ICalendarPtr var_Calendar = spSchedule1->GetCalendar();
	var_Calendar->PutAllowToggleSelectKey(EXSCHEDULELib::exLeftClick);
	var_Calendar->PutAllowSelectDate(EXSCHEDULELib::exLeftClick);
	var_Calendar->PutSingleSel(VARIANT_FALSE);

C++ Builder

Schedule1->OnResizeControl = Exschedulelib_tlb::OnResizeControlEnum::exResizePanelRight | Exschedulelib_tlb::OnResizeControlEnum::exHideSplitter | Exschedulelib_tlb::OnResizeControlEnum::exCalendarFit;
Exschedulelib_tlb::ICalendarPtr var_Calendar = Schedule1->Calendar;
	var_Calendar->AllowToggleSelectKey = Exschedulelib_tlb::AllowKeysEnum::exLeftClick;
	var_Calendar->AllowSelectDate = Exschedulelib_tlb::AllowKeysEnum::exLeftClick;
	var_Calendar->SingleSel = false;

C#

exschedule1.OnResizeControl = exontrol.EXSCHEDULELib.OnResizeControlEnum.exResizePanelRight | exontrol.EXSCHEDULELib.OnResizeControlEnum.exHideSplitter | exontrol.EXSCHEDULELib.OnResizeControlEnum.exCalendarFit;
exontrol.EXSCHEDULELib.Calendar var_Calendar = exschedule1.Calendar;
	var_Calendar.AllowToggleSelectKey = exontrol.EXSCHEDULELib.AllowKeysEnum.exLeftClick;
	var_Calendar.AllowSelectDate = exontrol.EXSCHEDULELib.AllowKeysEnum.exLeftClick;
	var_Calendar.SingleSel = false;

JavaScript

<OBJECT classid="clsid:9B09E13D-7A88-4299-9DBE-383380435377" id="Schedule1"></OBJECT>

<SCRIPT LANGUAGE="JScript">
	Schedule1.OnResizeControl = 1281;
	var var_Calendar = Schedule1.Calendar;
		var_Calendar.AllowToggleSelectKey = 1;
		var_Calendar.AllowSelectDate = 1;
		var_Calendar.SingleSel = false;
</SCRIPT>

C# for /COM

axSchedule1.OnResizeControl = EXSCHEDULELib.OnResizeControlEnum.exResizePanelRight | EXSCHEDULELib.OnResizeControlEnum.exHideSplitter | EXSCHEDULELib.OnResizeControlEnum.exCalendarFit;
EXSCHEDULELib.Calendar var_Calendar = axSchedule1.Calendar;
	var_Calendar.AllowToggleSelectKey = EXSCHEDULELib.AllowKeysEnum.exLeftClick;
	var_Calendar.AllowSelectDate = EXSCHEDULELib.AllowKeysEnum.exLeftClick;
	var_Calendar.SingleSel = false;

X++ (Dynamics Ax 2009)

public void init()
{
	COM com_Calendar;
	anytype var_Calendar;
	;

	super();

	exschedule1.OnResizeControl(1281/*exResizePanelRight | exHideSplitter | exCalendarFit*/);
	var_Calendar = exschedule1.Calendar(); com_Calendar = var_Calendar;
		com_Calendar.AllowToggleSelectKey(1/*exLeftClick*/);
		com_Calendar.AllowSelectDate(1/*exLeftClick*/);
		com_Calendar.SingleSel(false);
}

Delphi 8 (.NET only)

with AxSchedule1 do
begin
	OnResizeControl := Integer(EXSCHEDULELib.OnResizeControlEnum.exResizePanelRight) Or Integer(EXSCHEDULELib.OnResizeControlEnum.exHideSplitter) Or Integer(EXSCHEDULELib.OnResizeControlEnum.exCalendarFit);
	with Calendar do
	begin
		AllowToggleSelectKey := EXSCHEDULELib.AllowKeysEnum.exLeftClick;
		AllowSelectDate := EXSCHEDULELib.AllowKeysEnum.exLeftClick;
		SingleSel := False;
	end;
end

Delphi (standard)

with Schedule1 do
begin
	OnResizeControl := Integer(EXSCHEDULELib_TLB.exResizePanelRight) Or Integer(EXSCHEDULELib_TLB.exHideSplitter) Or Integer(EXSCHEDULELib_TLB.exCalendarFit);
	with Calendar do
	begin
		AllowToggleSelectKey := EXSCHEDULELib_TLB.exLeftClick;
		AllowSelectDate := EXSCHEDULELib_TLB.exLeftClick;
		SingleSel := False;
	end;
end

VFP

with thisform.Schedule1
	.OnResizeControl = 1281
	with .Calendar
		.AllowToggleSelectKey = 1
		.AllowSelectDate = 1
		.SingleSel = .F.
	endwith
endwith

dBASE Plus

local oSchedule,var_Calendar

oSchedule = form.Activex1.nativeObject
oSchedule.OnResizeControl = 1281 /*exResizePanelRight | exHideSplitter | exCalendarFit*/
var_Calendar = oSchedule.Calendar
	var_Calendar.AllowToggleSelectKey = 1
	var_Calendar.AllowSelectDate = 1
	var_Calendar.SingleSel = false

XBasic (Alpha Five)

Dim oSchedule as P
Dim var_Calendar as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.OnResizeControl = 1281 'exResizePanelRight + exHideSplitter + exCalendarFit
var_Calendar = oSchedule.Calendar
	var_Calendar.AllowToggleSelectKey = 1
	var_Calendar.AllowSelectDate = 1
	var_Calendar.SingleSel = .f.

Visual Objects

local var_Calendar as ICalendar

oDCOCX_Exontrol1:OnResizeControl := exResizePanelRight | exHideSplitter | exCalendarFit
var_Calendar := oDCOCX_Exontrol1:Calendar
	var_Calendar:AllowToggleSelectKey := exLeftClick
	var_Calendar:AllowSelectDate := exLeftClick
	var_Calendar:SingleSel := false

PowerBuilder

OleObject oSchedule,var_Calendar

oSchedule = ole_1.Object
oSchedule.OnResizeControl = 1281 /*exResizePanelRight | exHideSplitter | exCalendarFit*/
var_Calendar = oSchedule.Calendar
	var_Calendar.AllowToggleSelectKey = 1
	var_Calendar.AllowSelectDate = 1
	var_Calendar.SingleSel = false