<?xml version="1.0"?>
<!-- http://blog.flexexamples.com/2008/03/02/setting-a-custom-broken-image-skin-for-the-image-control-in-flex/ -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
        layout="vertical"
        verticalAlign="middle"
        backgroundColor="white" viewSourceURL="srcview/index.html">

    <mx:Script>
        <![CDATA[
            import mx.controls.Alert;

            private var alert:Alert;

            private function image_ioError(evt:IOErrorEvent):void {
                alert = Alert.show(evt.text, evt.type);
            }

            private function loadImage(src:String):void {
                image.source = src;
            }
        ]]>
    </mx:Script>

    <mx:Style>
        Image {
            brokenImageSkin: Embed("assets/flex_logo.jpg");
        }
    </mx:Style>

    <mx:ApplicationControlBar dock="true">
        <mx:Button label="Good"
                click="loadImage('assets/flashplayer_icon.jpg');" />
        <mx:Button label="Bad"
                click="loadImage('assets/404.gif');" />
    </mx:ApplicationControlBar>

    <mx:Image id="image"
            maintainAspectRatio="true"
            scaleContent="false"
            width="200"
            height="200"
            ioError="image_ioError(event);" />

</mx:Application>