(this page was created automatically. In case of formatting issues, please visit the official Wiki Page)

Tree View

The Dynamic Tree View component is a hierarchical data display component that presents information in a collapsible tree structure. It allows users to visualize and navigate through nested data with parent-child relationships. This component is ideal for representing organizational structures, file systems, category hierarchies, or any nested data that has a clear parent-child relationship.

Properties

General Properties

Visual Properties

Datasource Properties

Event Actions Properties

Authorization Properties

Visibility Properties

Testing Hooks Properties

Technical Implementation Notes

When implementing the Tree View component:

  1. The data structure should have a clear parent-child relationship, with each node containing a unique identifier and a field that references its children.
  2. The component automatically handles the expansion and collapse of tree nodes.
  3. When a node is selected, the ONTREEITEM_CLICK event is triggered, passing the selected node's data to any configured actions.
  4. The component supports both flat and hierarchical data structures, as long as the appropriate expressions are set to map the relationships.
  5. For large datasets, consider implementing server-side filtering or pagination through the request parameters.

Data Format

The tree view component expects a hierarchical data structure or a flat structure that can be converted to a hierarchy. Here's an example of a hierarchical data format:

[
  {
    "id": "1",
    "name": "Electronics",
    "children": [
      {
        "id": "1-1",
        "name": "Smartphones",
        "children": []
      },
      {
        "id": "1-2",
        "name": "Laptops",
        "children": []
      }
    ]
  },
  {
    "id": "2",
    "name": "Clothing",
    "children": [
      {
        "id": "2-1",
        "name": "Men's",
        "children": []
      },
      {
        "id": "2-2",
        "name": "Women's",
        "children": []
      }
    ]
  }
]

With this data structure, you would set: