Changing the next and previous year navigation icons on a DateChooser control in Flex

by Peter deHaan on February 12, 2008

In a previous example, “Changing the next and previous month navigation icons on a DateChooser control in Flex”, we saw how to change the next/previous month button skins on a DateChooser control by setting the nextMonthSkin and prevMonthSkin styles.

In the following example, we see how you can change the next/previous year button skins on a DateChooser control by setting the nextYearSkin and prevYearSkin styles and the yearNavigationEnabled property.

Full code after the jump.

View MXML

<?xml version="1.0" encoding="utf-8"?>
<!-- http://blog.flexexamples.com/2008/02/12/changing-the-next-and-previous-year-navigation-icons-on-a-datechooser-control-in-flex/ -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
        layout="vertical"
        verticalAlign="middle"
        backgroundColor="white">

    <mx:DateChooser id="dateChooser"
            yearNavigationEnabled="true"
            prevYearSkin="@Embed('assets/bullet_delete.png')"
            nextYearSkin="@Embed('assets/bullet_add.png')" />

</mx:Application>

View source is enabled in the following example.

You can also set the nextYearSkin and prevYearSkin styles in an external .CSS file or <mx:Style /> block, as shown in the following snippet:

<mx:Style>
    DateChooser {
        prevYearSkin: Embed("assets/bullet_delete.png");
        nextYearSkin: Embed("assets/bullet_add.png");
    }
</mx:Style>

<mx:DateChooser id="dateChooser"
        yearNavigationEnabled="true" />

Or, you can set the nextYearSkin and prevYearSkin styles in ActionScript, as shown in the following snippet:

<mx:Script>
    <![CDATA[
        [Embed("assets/bullet_delete.png")]
        private var bulletDeleteIcon:Class;

        [Embed("assets/bullet_add.png")]
        private var bulletAddIcon:Class;

        private function init():void {
            dateChooser.setStyle("prevYearSkin", bulletDeleteIcon);
            dateChooser.setStyle("nextYearSkin", bulletAddIcon);
        }
    ]]>
</mx:Script>

<mx:DateChooser id="dateChooser"
        yearNavigationEnabled="true"
        initialize="init();" />

Leave a Comment

Sorry, this blog is terrible at eating HTML comments.
If you're pasting any HTML/XML/MXML code, you need to convert your < characters to &lt; and your > characters to &gt; .

Anti-Spam Protection by WP-SpamFree

Previous post:

Next post: