
Hierarchies defined in the context can be visualized using the Tree UI element. The hierarchy to be displayed is defined in the context. You can describe this context structure in two ways:
A tree is therefore used for navigation. By clicking on an entry the associated data is displayed in another place. If you want to display a tree structure in which data can be input and you want to provide a scroll bar, use a hierarchical table instead of a tree. More information: TreeByKeyTableColumn and TreeByNestingTableColumn. A tree does not enable the user to select entries, it can only interact with the LeadSelection. Note that although this looks like a selection, it does affect performance, which means that for most scenarios it would be a hindrance.
Example of the Visual Display

The Tree UI element is bound against the top-level context node to be displayed.
You use nodes (TreeNodeType elements) or leaves (TreeItemType elements) to specify which subnodes are to be displayed and which context attributes are to be displayed on these subnodes as a text or tooltip. The dataSource property of the TreeNodeType element or TreeItemType element is bound to the corresponding context node and the properties text, tooltip, and so on, are bound to the corresponding context attributes on this context node.
TreeItemType elements cannot have children. Therefore, they are always displayed as leaves. They are used when it is decided at design time that the corresponding node does not have children. When using TreeNodeType elements, the decision of whether to use children is dynamically made at runtime.
Hierarchy levels defined in the context cannot be left out when displaying the UI element. For example, a TreeNodeType element that is bound to the Orders must also exist to display the items for the hierarchy, which is defined in a context.
All nodes that are not directly below the context root node must be non-singleton nodes, because all elements should be displayed in a tree regardless of the lead selection.
You can also bind the tree so that the dataSource of the tree binds to a structured 1:1 node and the element nodes of the tree are located below them. This is necessary to map directory structures. With recursive trees you can display the recursions for this 1:1 node. This is then skipped with rendering.
To enable the development of accessible applications, the tooltip property is checked during the syntax check.
| Runtime Class |
CL_WD_TREE |
Properties in View Designer
| Name | Type | Initial Value | Bindable |
|---|---|---|---|
|
STRING |
(automatic) |
No |
|
|
WDUI_CONTEXT_MENU_BEHAVIOUR |
inherit |
No |
|
|
WDY_MD_UI_ELEMENT_REFERENCE |
No |
||
|
Context Node |
Mandatory |
||
|
STRING |
Yes |
||
|
STRING |
Yes |
||
|
WDY_BOOLEAN |
true |
Yes |
|
|
STRING |
Yes |
||
|
Translatable text |
Yes |
||
|
WDY_BOOLEAN |
true |
Yes |
|
|
WDUI_LEAD_SEL_CHNG_BEHVR |
auto |
No |
|
|
Translatable text |
Yes |
||
|
WDUI_VISIBILITY |
visible |
Yes |
|
|
Translatable text |
Yes |
||
|
WDUI_VISIBILITY |
visible |
Yes |
|
|
STRING |
Yes |
Aggregations in the View Designer
| Name | Cardinality | Type |
|---|---|---|
|
0..1 |
||
|
0..n |
Events in View Designer
| Name |
|---|
Other properties that can be inherited are defined in the related higher-level classes. The related UI elements are:
For dynamic programming, the same properties, events, and aggregations as in the View Designer are available. But note that the spelling format and use of upper/lower case is different.
Dynamic Programming of Properties
| View Designer Name | Runtime Name | Type |
|---|---|---|
|
CONTEXT_MENU_BEHAVIOUR |
WDUI_CONTEXT_MENU_BEHAVIOUR |
|
|
contextMenuBehaviour: inherit |
CL_WD_TREE=>E_CONTEXT_MENU_BEHAVIOUR-INHERIT |
|
|
contextMenuBehaviour: provide |
CL_WD_TREE=>E_CONTEXT_MENU_BEHAVIOUR-PROVIDE |
|
|
contextMenuBehaviour: suppress |
CL_WD_TREE=>E_CONTEXT_MENU_BEHAVIOUR-SUPPRESS |
|
|
CONTEXT_MENU_ID |
WDY_MD_UI_ELEMENT_REFERENCE |
|
|
DATA_SOURCE |
OBJECT |
|
|
DEFAULT_ITEM_ICON_SOURCE |
STRING |
|
|
DEFAULT_NODE_ICON_SOURCE |
STRING |
|
|
ENABLED |
WDY_BOOLEAN |
|
|
MIN_HEIGHT |
STRING |
|
|
ROOT_TEXT |
WDY_MD_TRANSLATABLE_TEXT |
|
|
ROOT_VISIBLE |
WDY_BOOLEAN |
|
|
SELECTION_CHANGE_BEHAVIOUR |
WDUI_LEAD_SEL_CHNG_BEHVR |
|
|
selectionChangeBehaviour: auto |
CL_WD_TREE=>E_SELECTION_CHANGE_BEHAVIOUR-AUTO |
|
|
selectionChangeBehaviour: manual |
CL_WD_TREE=>E_SELECTION_CHANGE_BEHAVIOUR-MANUAL |
|
|
TITLE |
WDY_MD_TRANSLATABLE_TEXT |
|
|
TITLE_VISIBLE |
WDUI_VISIBILITY |
|
|
titleVisible: none |
CL_WD_TREE=>E_TITLE_VISIBLE-NONE |
|
|
titleVisible: visible |
CL_WD_TREE=>E_TITLE_VISIBLE-VISIBLE |
|
|
TOOLTIP |
WDY_MD_TRANSLATABLE_TEXT |
|
|
VISIBLE |
WDUI_VISIBILITY |
|
|
visible: none |
CL_WD_TREE=>E_VISIBLE-NONE |
|
|
visible: visible |
CL_WD_TREE=>E_VISIBLE-VISIBLE |
|
|
WIDTH |
STRING |
Dynamic Programming of Events
| View Designer Name | Runtime Name |
|---|---|
|
ON_DROP |
|
|
ON_EXPAND_ALL |
Dynamic Programming of Aggregations
| View Designer Name | Runtime Name | Cardinality |
|---|---|---|
|
DROP_TARGET_INFO |
0..1 |
|
|
NODE_TYPES |
0..n |
You can find examples of this interface element in the system in the Web Dynpro application WDR_TEST_UI_ELEMENTS, and in the component WDR_TEST_EVENTS in the views TREE_*.