mx:Datechooser Flex 3 multipleselection multiple select dates
Never found a straight-forward example of how to set multiple date ranges on a
datechooser component.
The critical part is getting your head round the basics which means cutting away
all the chaff and fancy stuff.
This is the bare-bones nitty gritty. It doesn’t get simpler than this.
It’ll do for me! (unless someone sees some bug or other!)

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
	xmlns="*" layout="vertical" width="590" height="408"
	creationComplete="generateDates()">
<mx:DateChooser id="dch" allowDisjointSelection="true"
    allowMultipleSelection="true" change="calendarClickHandler(event)"/>

	<mx:Script>
		<![CDATA[
		import mx.events.CalendarLayoutChangeEvent;
		private function calendarClickHandler
                      (event:CalendarLayoutChangeEvent):void
		{
			generateDates();
		}

		private function createRange(Start:Object,End:Object):Object
                {
			var O:Object = new Object;
			O.rangeStart = new Date(Start);
			O.rangeEnd = new Date(End);
			return O;
		}	

		private function generateDates():void
		{
			var selectedRanges:Array = new Array();
			var selectRange:Object = new Object();
			var selectRange1:Object = new Object();
	                selectedRanges.push(createRange(new Date("2009/04/01"),
                                                new Date("2009/04/04") ) );
	                selectedRanges.push(createRange(new Date("2009/04/19"),
                                                new Date("2009/04/30") ) );
	                dch.selectedRanges = selectedRanges; 

	         }
	]]>
	</mx:Script>
</mx:Application>

Leave a Comment