<switcher>要素
ネームスペース: http://xmlns.oracle.com/uix/ui
派生元: <ui:base>要素
グループ: UIX Components
要素の型: UINode

<switcher>要素は、レンダリングの必要があるUINodeサブツリーを動的に決めるために使用されます。

構文
<switcher
      childName="string"
    [ defaultCase="string" ]
>
   <case></case>
   <default></default>
</switcher>

注意:
  • この要素は派生元要素のすべての属性と子要素を持つことができます。

  • 説明

    <switcher>要素は、一連のBean内でBeanを切り替えるために使用できます。 childNameというプロパティがあり、この名前で名前の付けられた子をレンダリングします。 FlowLayoutを使用し、索引付けされた子のrenderedプロパティをバインディングすることにより、同じ機能を実現できますが、この方法の方が簡単です。 Switcher Beanの索引付けされた子は、レンダリングされません。


    <switcher childName="${ui:defaulting(userData.person, 'default')}">
     <case name="default">
      You have not picked anyone
     </case>
     <case name="Roger">
      You have picked Roger
     </case>
     <case name="Peter">
      You have picked Peter
     </case>
    </switcher>
    
    <switcher childName="${userData.person}"
              defaultCase="defCase">
     <case name="defCase">
      You have not picked anyone
     </case>
     <case name="Roger">
      You have picked Roger
     </case>
     <case name="Peter">
      You have picked Peter
     </case>
    </switcher>
    
    <switcher childName="${userData.person}">
     <default>
      You have not picked anyone
     </case>
     <case name="Roger">
      You have picked Roger
     </case>
     <case name="Peter">
      You have picked Peter
     </case>
    </switcher>

    属性

    説明
    childName レンダリング時に、childName属性の値が、各case要素のname属性と比較されます。 childName属性がcaseの名前と一致した場合、そのcaseのコンテンツがレンダリングされます。  必須。
    string
    defaultCase この属性により、childNameが他のcase要素の名前と一致しない場合にレンダリングされるcase要素が指定されます。 注意: default要素とdefaultCase属性の両方が指定されている場合は、default要素が優先されます。
    string

    子要素

    説明 必須 組込み可能な数
    <case>
    レンダリングする必要のある子を決めるために、SwitcherBeanとともに使用されます。
    はい 無限
    <default>
    他のcase要素でchildName属性と一致するものがない場合にレンダリングするノード。
    いいえ 1