# FlowLayoutPanel

The `FlowLayoutPanel` control arranges its contents in a horizontal or vertical flow direction. You can wrap the control's contents from one row to the next, or from one column to the next. Alternatively, you can clip instead of wrap its contents.

You can specify the flow direction by setting the `FlowDirection` property. The `FlowLayoutPanel` control correctly reverses its flow direction in Right-to-Left (RTL) layouts. You can also specify whether the contents are wrapped or clipped by setting the `WrapContents` property.

The `FlowLayoutPanel` control automatically sizes to its contents when you set the `AutoSize` property to `true`. It also provides a `FlowBreak` property to its child controls. Setting the `FlowBreak` property to `true` causes the control to stop laying out controls in the current flow direction and wrap to the next row or column.

Any Wisej.NET control can be a child of the `FlowLayoutPanel` control, including other `FlowLayoutPanel` instances. This enables construction of sophisticated layouts that adapt to your form's dimensions at runtime.

{% hint style="info" %}
For a full list of properties, methods and events see the [API documentation.](http://docs.wisej.com/api)
{% endhint %}

## Features

### AutoSize

When enabled, the `FlowLayoutPanel` control resizes itself to fit its contents according to the `AutoSizeMode` property specified.

{% content-ref url="../../concepts/layouts" %}
[layouts](https://docs.wisej.com/docs/concepts/layouts)
{% endcontent-ref %}

### Flow Direction

The `FlowLayoutPanel` control supports multiple layout directions for its children using the `FlowDirection` property. Available options are `LeftToRight`, `TopDown`, `RightToLeft`, and `BottomUp`. The default layout direction is `LeftToRight`.

![FlowLayoutPanel demonstrating different flow direction options](https://553579532-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MF1D11gPs_az3xaKusw%2Fuploads%2FnzggZaH0xsFkcD5OC69m%2FFlowLayoutPanel%20FlowDirection.gif?alt=media\&token=125316ae-045a-4282-9b4b-54a9e7f38c66)

## Advanced

### JavaScript Widget

| Item                | Description                                                                                                                                                                                                                                                                             |
| ------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Class name          | "wisej.web.Panel"                                                                                                                                                                                                                                                                       |
| Theme appearance    | "panel", see [Themes](https://docs.wisej.com/theme-builder/theme-elements/elements).                                                                                                                                                                                                    |
| Child components    | "pane" is the container. "captionbar" is the header. "title" is the title of the panel. "icon" is the icon of the panel, if applicable. "close-button" is the close button of the panel, if applicable. See [JavaScript](https://docs.wisej.com/docs/concepts/javascript-object-model). |
| Toolcontainer state | "panel", see [Embedded Tools](https://docs.wisej.com/docs/controls/general/embedded-tools).                                                                                                                                                                                             |
| Source code         | [https://github.com/iceteagroup/wisej-js](https://github.com/iceteagroup/wisej-js/blob/master/wisej.web.TextBox.js)                                                                                                                                                                     |
