In Power Apps sono disponibili due tipi di gallery, a layout (o template) fisso e quello flessibile (o variabile).
I due tipi sono indicati nell'immagine seguente:
tipi di templatetipi di template
Il tipo fisso prevede che il template che rappresenta il singolo item sia a dimensione fissa, quindi con la sua dimensione indipendente dal contenuto, ogni item avrà la stessa dimensione.
Al contrario il tipo flessibile (flexible) è in grado di adattare le dimensioni del suo template al contenuto.
Le gallery con template fisso sono sia verticali che orizzontali, mentre quelle flexible sono solo verticali.
L'immagine seguente mostra un esempio pratico:
confronto template fisso / flessibileconfronto template fisso / flessibile
A sinistra si vede il template a dimensione fissa, dove i testi vengono troncati (ho abilitato la scrollbar solo per evidenziare la dimensione del testo), mentre a desta invece, con il template flexible, l'altezza si adatta al contenuto.

Questo è come si presenta nelleditor, il template flexible non si adatta al contenuto finché non si va in run:
esempio dei due template in editesempio dei due template in edit


Per ottenere il corretto funzionamento del template flexible oltre a scegliere questo tipo di gallery, vanno anche posizionati gli elementi interni con delle formule.
In pratica bisogna impostare gli elementi in modo che la loro posizione (Y) dipenda dagli elementi precedenti. Inoltre gli elementi con contenuto variabile (Body1) dovranno essere impostati con la proprietà Auto height impostata a on (true).
Auto heightAuto height
Quindi avremo questa situazione, Title1 fisso:
Title1.X = 32
Title1.Y = 16
Title1.width = Parent.TemplateWidth - 32
Title1.Height = Self.Size * 1.8
Body1 dipende dall'altezza del Title1:
Body1.X = 32
Body1.Y = Title1.Y + Title1.Height + 16
Body1.width = Parent.TemplateWidth - 32
Body1.Height = Self.Size * 4
Bod1.AutoHeight = true
infine il rettangolo di separazione Separator1, la sua posizione Y dipende da Body1:
Separator1.X = 0
Separator1.Y = Body1.Y + Body1.Height + 16
Separator1.width = Parent.TemplateWidth
Separator1.Height = 1
Attenzione non è possibile passare da una gallery a tamplate fisso a una a template flessibile e viceversa. Se si sbaglia il tipo vanno rifatte completamente con il nuovo tipo.