# Editing pages

## Introduction

As part of form design in **Eximee Designer** the user has the ability to edit individual **application pages**, which make up its logical and visual structure.\
Each page can contain [base components](/documentation/documentation-en/budowanie-aplikacji/interfejs-uzytkownika/formularze/praca-z-komponentami-bazowymi/dodawanie-i-parametryzowanie-komponentow.md) or complex ones, and its behavior and appearance can be modified in the page properties panel.

## Form structure and pages

The form in Eximee consists of **steps** and **pages**. Page management is done in the **Steps tab**, while their content and layout are modified in the **Application tab**.

## Visibility conditions

Visibility conditions make it possible to control whether a given page will be displayed to the user.\
They are defined in the tab **Application** on the selected page, in the section **Data quality** (field **Add visibility condition**) using logical expressions created in the **advanced condition editor**, which allows references to form field values or session variables.

Visibility conditions can also be defined in the tab **Steps** – via the option **Add condition**, which makes it possible to define the presentation logic of individual form steps.

More information: Advanced condition editor.

## Editing the page layout

Each page has a defined column layout, determined when the form is created.\
Changing the number of columns (**numColumns**) is possible only by editing the XML code in the tab **Source**.

{% code title="Example of a page fragment with the number of columns set to 12" %}

```xml
<system:Page id="Page3" mid="Page3" titleKey="Page3.title">
  <system:Page.layout>
    <ns6:GridLayout makeColumnsEqualWidth="true" numColumns="12"/>
  </system:Page.layout>
</system:Page>
```

{% endcode %}

{% hint style="info" %}
**Note:**\
Before reducing the number of columns, adjust the width of the components (`horizontalSpan`) - their total in a row cannot exceed the number of columns on the page.
{% endhint %}

## Page styling

Each page can have its own CSS styles assigned.\
A style defines the visual presentation of the page (e.g. layout, margins, background color). The defined style can be set in the panel **Properties** (section **Styling**) or directly in the XML source via the attribute `styleName`.

Properties `fixedColumns` and `styleName` make it possible to define the page appearance - respectively the layout structure and the assigned CSS style.

It is recommended to use platform styles consistent with the implemented visual design.\
More information: *Form and component styles*.

## Page properties

Clicking on an empty area of the application editor opens the page **Properties** panel.

<div align="center"><figure><img src="/files/c9a45a77bc48a0af88079e51db22e0893501e6a4" alt="" width="152"><figcaption><p><em><strong>Figure 1.</strong> Fragment of the page "Properties" panel</em></p></figcaption></figure></div>

> More information about page properties [here](/documentation/documentation-en/budowanie-aplikacji/interfejs-uzytkownika/formularze/tworzenie-formularza/kroki-i-strony-formularza.md#wlasciwosci-stron)

## Best practices

* Establish a consistent page naming convention (e.g. *Page1*, *Page2*, *Summary*).
* Use visibility conditions only where necessary.
* Set a uniform number of columns across all form pages.
* Design the component layout so that their total `horizontalSpan` in a row does not exceed the number of columns on the page. When changing the number of columns, remember to adjust the width of the components.
* Pages located after [the save point](/documentation/documentation-en/budowanie-aplikacji/interfejs-uzytkownika/formularze/tworzenie-formularza/punkt-zapisu-wniosku-i-mechanizm-ostatnich-stron.md) are treated as **ending pages** (e.g. thank you page, confirmation)

## FAQ

**Can the order of pages in the form be changed?**\
Yes. In the **Steps** tab, pages can be dragged using *drag & drop*drag and drop. Changes are saved automatically.

**How do I hide a page from the user?**\
In the page properties panel, set the **visibility condition** (`visibleCondition`). The page will be shown only if the condition returns the value `true`.

**Can the number of columns on a page differ from the rest of the form?**\
Yes, but only by editing the XML source in the tab **Source** - by changing the attribute `numColumns` in the element `<system:Page.layout>`.

**How do I set a page as a thank-you page?**\
Just place it after [**the form save point**](/documentation/documentation-en/budowanie-aplikacji/interfejs-uzytkownika/formularze/tworzenie-formularza/punkt-zapisu-wniosku-i-mechanizm-ostatnich-stron.md) - the system will automatically treat it as an ending page.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.eximee.com/documentation/documentation-en/budowanie-aplikacji/interfejs-uzytkownika/formularze/tworzenie-formularza/edycja-stron.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
