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>