{ "type": "class",
  "qname": "mx.controls.LinkBar",
  "baseClassname": "mx.containers.Box"
  ,
    "description": "A LinkBar control defines a horizontal or vertical row of LinkButton controls that designate a series of link destinations. You typically use a LinkBar control to control the active child container of a ViewStack container, or to create a stand-alone set of links.  <p>The LinkBar control creates LinkButton controls based on the value of its <code>dataProvider</code> property. Even though LinkBar is a subclass of Container, do not use methods such as <code>Container.addChild()</code> and <code>Container.removeChild()</code> to add or remove LinkButton controls. Instead, use methods such as <code>addItem()</code> and <code>removeItem()</code> to manipulate the <code>dataProvider</code> property. The LinkBar control automatically adds or removes the necessary children based on changes to the <code>dataProvider</code> property.</p>  <p>A LinkBar control has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Preferred size</td> <td>A width wide enough to contain all label text, plus any padding and separators, and the height of the tallest child.</td> </tr> <tr> <td>Control resizing rules</td> <td>LinkBar controls do not resize by default. Specify percentage sizes if you want your LinkBar to resize based on the size of its parent container.</td> </tr> <tr> <td>Padding</td> <td>2 pixels for the top, bottom, left, and right properties.</td> </tr> </table>  <p>The <code>&lt;mx:LinkBar&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:LinkBar\\n <b>Properties</b>\\n selectedIndex=&quot;-1&quot;\\n \\n <b>Styles</b>\\n linkButtonStyleName=&quot;&quot;\\n horizontalGap=&quot;8&quot;\\n paddingBottom=&quot;2&quot;\\n paddingTop=&quot;2&quot;\\n rollOverColor=&quot;0xEEFEE6&quot;\\n selectionColor=&quot;0xCDFFC1&quot;\\n separatorColor=&quot;<i>No default</i>&quot;\\n separatorSkin=&quot;0x000000&quot;\\n separatorWidth=&quot;1&quot;\\n textRollOverColor=&quot;0x2B333C&quot;\\n textSelectedColor=&quot;0x000000&quot;\\n verticalGap=&quot;8&quot;\\n &gt;\\n ...\\n <i>child tags</i>\\n ...\\n &lt;/mx:LinkBar&gt;\\n </pre>",
  "tags": [
  {  "tagName": "includeExample",
         "values": ["examples/LinkBarExample.mxml"]},
      {  "tagName": "see",
         "values": ["mx.controls.NavBar", "mx.containers.ViewStack", "mx.controls.LinkButton", "mx.controls.ToggleButtonBar", "mx.controls.ButtonBar"]},
      {  "tagName": "playerversion",
         "values": ["Flash 9", "AIR 1.1"]},
      {  "tagName": "mxml",
         "values": []},
      {  "tagName": "productversion",
         "values": ["Flex 3"]},
      {  "tagName": "langversion",
         "values": ["3.0"]}  ],
  "members": [
  { "type": "method",
        "qname": "mx.controls.LinkBar",
        "namespace": "",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "Constructor.",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ],
          "return": "",
          "params": []}
      ,
      { "type": "accessor",
        "access": "read-write",
        "return": "Object",
        "qname": "dataProvider",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {}}]
  }
