> ## Documentation Index
> Fetch the complete documentation index at: https://docs.pads4.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Row properties

The **row properties** define the **layout and real-time data** displayed in each row of the **table element**. The table **automatically repeats** this row as many times as needed to fill the **table body**.

***

## **Editing Row Content**

1. Click **Edit** to open the **Edit Row** window.
2. Design the **row layout** by adding **page elements** and setting their properties.
3. Click **Close** in the **File menu**.
4. Click **Yes** to confirm and **save changes**.
5. Click **OK** or **Apply** in the **table properties** window to apply changes.

***

## **Row Design & Layout**

* Similar to **designing a standard page**, you can add **any type of page element** (except another table element).
* Elements can be arranged in a **single line** or **multiple lines** to create **multi-line rows**.
* Elements can be **linked to a data source** for **real-time data updates**.

### **Data Display & Scrolling**

* **Connected to Data Source:**
  * **Each row element** pulls **real-time data** from a **data provider**.
  * The **Row property** should be set to **1** for the first row (automatically increases for additional rows).

* **Not Connected to Data Source:**
  * Displays the **same content across all rows**.

* **Scrolling Support:**
  * If **more data is available** than can fit, the table will **scroll** to display all data.
  * To enable scrolling, turn on **data scrolling** for each **scrolling row element**.
  * Use **"Don’t Scroll the First X Rows"** to keep **certain rows static**.

### **Using Multiple Data Providers**

* A row **can include multiple data providers**.
* Be aware that **each element's Row property** will increase for additional rows.

***

## **Row Height & Automatic Adjustment**

| **Height Setting** | **Behavior**                                                                          |
| ------------------ | ------------------------------------------------------------------------------------- |
| **Fixed Height**   | Row height remains **constant**.                                                      |
| **Auto Adjust**    | The **system adjusts row height** if an element becomes **invisible** or **resized**. |

* The **bottommost element** controls **row height adjustment**.
* If an element **disappears** or **shrinks**, the **row height reduces automatically**.

***

## **Advanced Row Features**

### **Grouping Rows**

* Group **related data elements** together.
* Useful for **category-based** or **sorted** tables.

### **Multi-Line Row Display**

* Example: At an **airport**, the first line displays **flight details**, and the second line displays **route information**.
* If **no route information exists**, the **second line disappears**, and the **row height adjusts automatically**.

### **Property Bindings & Calculated Row Numbers**

* When using **property bindings**, enable **scrolling** to let the **binding dynamically adjust** to the correct row number.
* During **runtime**, the **initial row number** will be used, and the **system calculates additional row numbers** as the table **refreshes**.

***

## **Best Practices & Tips**

* **Enable scrolling** for data-driven elements to **display all information dynamically**.
* **Use grouping** to categorize data for **better readability**.
* **Set auto-adjust height** to **avoid empty space** when content is missing.
* **For dynamic row elements**, use **rules** to **show/hide content based on data availability**.
* **Use property bindings** to **automatically adjust row numbers** when scrolling.
