             || (_maxDate == null && value == null))
             return;
 
-        _maxDate = new Date(value.time);
+        _maxDate = value != null ? new Date(value.time) : value;
         populateYearDataProvider = true;
         populateDateDataProvider = true;
         maxDateChanged = true;

        var labelWidth:Number;
        for (var i:int = 0; i < list.length; i++)
        {
            labelWidth = measureText(list[i].label).width;
            if (labelWidth > maxWidth)
            {

            || (_minDate == null && value == null))
            return;
        
        _minDate = value != null ? new Date(value.time) : value;
        populateYearDataProvider = true;
        populateDateDataProvider = true;
        minDateChanged = true;
