{ "type": "class",
  "qname": "spark.components.DropDownList",
  "baseClassname": "spark.components.supportClasses.DropDownListBase"
  ,
    "description": "The DropDownList control contains a drop-down list from which the user can select a single value. Its functionality is very similar to that of the SELECT form element in HTML.  <p>The DropDownList control consists of the anchor button, prompt area, and drop-down-list, Use the anchor button to open and close the drop-down-list. The prompt area displays a prompt String, or the selected item in the drop-down-list.</p>  <p>When the drop-down list is open:</p> <ul> <li>Clicking the anchor button closes the drop-down list and commits the currently selected data item.</li> <li>Clicking outside of the drop-down list closes the drop-down list and commits the currently selected data item.</li> <li>Clicking on a data item selects that item and closes the drop-down list.</li> <li>If the <code>requireSelection</code> property is <code>false</code>, clicking on a data item while pressing the Control key deselects the item and closes the drop-down list.</li> </ul>  <p><b>Note: </b>The Spark list-based controls (the Spark ListBase class and its subclasses such as ButtonBar, ComboBox, DropDownList, List, and TabBar) do not support the BasicLayout class as the value of the <code>layout</code> property. Do not use BasicLayout with the Spark list-based controls.</p>  <p>To use this component in a list-based component, such as a List or DataGrid, create an item renderer. For information about creating an item renderer, see <a href=&quot;http://help.adobe.com/en_US/flex/using/WS4bebcd66a74275c3-fc6548e124e49b51c4-8000.html&quot;> Custom Spark item renderers</a>. </p>  <p>The DropDownList control has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr><th>Characteristic</th><th>Description</th></tr> <tr><td>Default size</td><td>112 pixels wide and 21 pixels high</td></tr> <tr><td>Minimum size</td><td>112 pixels wide and 21 pixels high</td></tr> <tr><td>Maximum size</td><td>10000 pixels wide and 10000 pixels high</td></tr> <tr><td>Default skin class</td><td>spark.skins.spark.DropDownListSkin</td></tr> </table>  attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:DropDownList\\n <strong>Properties</strong>\\n prompt=&quot;&quot;\\n typicalItem=&quot;null&quot;\\n \\n <strong>Events</strong>\\n closed=&quot;<i>No default</i>&quot;\\n open=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
  "tags": [
  {  "tagName": "includeExample",
         "values": ["examples/DropDownListExample.mxml"]},
      {  "tagName": "see",
         "values": ["spark.skins.spark.DropDownListSkin", "spark.components.supportClasses.DropDownController"]},
      {  "tagName": "mxml",
         "values": ["<p>The <code>&lt;s:DropDownList&gt;</code> tag inherits all of the tag"]},
      {  "tagName": "playerversion",
         "values": ["Flash 10", "AIR 1.5"]},
      {  "tagName": "productversion",
         "values": ["Royale 0.9.4"]},
      {  "tagName": "langversion",
         "values": ["3.0"]}  ],
  "members": [
  { "type": "method",
        "qname": "spark.components.DropDownList",
        "namespace": "",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "Constructor.",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 10", "AIR 1.5"]},
            {  "tagName": "productversion",
               "values": ["Royale 0.9.4"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ],
          "return": "",
          "params": []}
      ,
      { "type": "accessor",
        "access": "read-write",
        "return": "String",
        "qname": "prompt",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "The prompt for the DropDownList control. The prompt is a String that is displayed in the DropDownList when <code>selectedIndex</code> = -1. It is usually a String such as &quot;Select one...&quot;. Selecting an item in the drop-down list replaces the prompt with the text from the selected item.",
        "tags": [
        {  "tagName": "default",
               "values": [""""]},
            {  "tagName": "playerversion",
               "values": ["Flash 10", "AIR 1.5"]},
            {  "tagName": "productversion",
               "values": ["Royale 0.9.4"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]},
      { "type": "accessor",
        "access": "read-write",
        "return": "Number",
        "qname": "measuredWidth",
        "namespace": "public",
        "bindable": [],
        "details": ["override"],
        "deprecated": {},
          "description": "",
        "tags": [
        {  "tagName": "private",
               "values": []}  ]},
      { "type": "accessor",
        "access": "read-write",
        "return": "Number",
        "qname": "measuredHeight",
        "namespace": "public",
        "bindable": [],
        "details": ["override"],
        "deprecated": {},
          "description": "",
        "tags": [
        {  "tagName": "private",
               "values": []}  ]}]
  }
