Support Power Platform - Apps - Automate - SharePoint - Copilot

Création d’une application Power Apps Canvas

Version adaptative (responsive) - Source SharePoint

Objectif

Ce mode opératoire vous guide dans la création d’une application Power Apps Canvas responsive (adaptative), capable de s’afficher correctement sur téléphone, tablette et ordinateur. L’application est connectée à une liste SharePoint et utilise les conteneurs modernes pour gérer la mise en page.

Prérequis

  • Licence Microsoft 365 avec accès à Power Apps
  • Site SharePoint avec une liste créée et des données de test
  • Droits de contribution sur la liste SharePoint
  • Navigateur web moderne (Edge, Chrome recommandés)

Comprendre les conteneurs

Les conteneurs sont des éléments essentiels pour créer des applications responsives. Ils permettent d’organiser et de redimensionner automatiquement les contrôles selon la taille de l’écran.

Types de conteneurs

TypeDescription et usage
Conteneur horizontalDispose les éléments enfants côte à côte, de gauche à droite. Idéal pour les barres d’outils, les menus horizontaux, les rangées de boutons.
Conteneur verticalEmpile les éléments enfants de haut en bas. Idéal pour les formulaires, les listes, la structure principale de la page.
Conteneur simpleConteneur sans direction prédéfinie, positionne les éléments librement. Utile pour grouper des contrôles ou créer des zones personnalisées.
📷 [Capture d’écran : Schéma illustrant les trois types de conteneurs]

Propriétés clés des conteneurs

PropriétéDescription
LayoutDirectionHorizontal ou Vertical - définit la direction d’empilement
LayoutJustifyContentStart, Center, End, SpaceBetween, SpaceAround - répartition sur l’axe principal
LayoutAlignItemsStart, Center, End, Stretch - alignement sur l’axe secondaire
LayoutGapEspacement entre les éléments enfants (en pixels)
LayoutWraptrue/false - permet le retour à la ligne automatique si l’espace est insuffisant
FlexHeight / FlexWidthPermet au conteneur de s’adapter à son contenu

Étape 1 : Créer l’application adaptative

  1. Accédez à make.powerapps.com.
  2. Cliquez sur + Créer dans le menu de gauche.
  3. Sélectionnez Application vide puis Format tablette.
  4. L’éditeur Power Apps s’ouvre avec un écran vide.
📷 [Capture d’écran : Écran de création avec sélection du format tablette]

Activer la mise en page responsive

  1. Sélectionnez l’écran Screen1 dans l’arborescence.
  2. Dans le panneau des propriétés à droite, configurez :

Propriété Width :

Max(App.Width, App.DesignWidth)

La largeur s’adapte à l’appareil tout en respectant la largeur minimale de conception

Propriété Height :

Max(App.Height, App.DesignHeight)

La hauteur s’adapte à l’appareil tout en respectant la hauteur minimale de conception

💡 Astuce responsive : Appliquez ces formules Width et Height à chaque nouvel écran que vous créez pour garantir une cohérence responsive sur l’ensemble de l’application.

Étape 2 : Connecter la liste SharePoint

  1. Dans le panneau de gauche, cliquez sur l’icône Données (cylindre).
  2. Cliquez sur + Ajouter des données.
  3. Recherchez SharePoint et sélectionnez le connecteur.
  4. Sélectionnez ou saisissez l’URL de votre site SharePoint.
  5. Cochez la liste à connecter et cliquez sur Connexion.
  6. La liste apparaît dans le panneau Données.
📷 [Capture d’écran : Panneau Données avec la liste SharePoint connectée]

Étape 3 : Créer la structure de mise en page

Nous allons créer une structure de page classique avec un en-tête, un contenu principal et un pied de page, le tout géré par des conteneurs.

3.1 Conteneur principal (structure de la page)

  1. Menu Insertion > Disposition > Conteneur vertical.
  2. Renommez-le conMain (conteneur principal).
  3. Configurez ses propriétés pour qu’il occupe tout l’écran :
X = 0

Position horizontale au bord gauche

Y = 0

Position verticale en haut

Width = Parent.Width

Largeur égale à celle de l’écran parent

Height = Parent.Height

Hauteur égale à celle de l’écran parent

📷 [Capture d’écran : Conteneur principal couvrant tout l’écran]

3.2 Conteneur d’en-tête

  1. Sélectionnez conMain dans l’arborescence.
  2. Insérez un Conteneur horizontal à l’intérieur.
  3. Renommez-le conHeader.
  4. Configurez ses propriétés (sélectionner la propriété dans la liste en haut à gauche) :
Width = Parent.Width

Occupe toute la largeur

Height = 60

Hauteur fixe de 60 pixels

Fill = RGBA(43, 87, 154, 1)

Couleur de fond bleue

LayoutJustifyContent = LayoutJustifyContent.SpaceBetween

Éléments répartis aux extrémités

LayoutAlignItems = LayoutAlignItems.Center

Éléments centrés verticalement

PaddingLeft = 20

Marge intérieure gauche

PaddingRight = 20

Marge intérieure droite

Dans conHeader, ajoutez :

  • Une Étiquette pour le titre de l’application (texte blanc, taille 20)
  • Un Bouton “+ Ajouter” (optionnel, pour la création)
📷 [Capture d’écran : En-tête avec titre et bouton d’ajout]

3.3 Conteneur de contenu principal

  1. Dans conMain, insérez un Conteneur horizontal sous l’en-tête.
  2. Renommez-le conContent.
  3. Configurez ses propriétés :
Width = Parent.Width

Occupe toute la largeur

Height = Parent.Height - conHeader.Height - conFooter.Height

Hauteur dynamique : espace restant entre header et footer

LayoutGap = 20

Espacement entre les zones

3.4 Zone galerie (liste des éléments)

Dans conContent, insérez un Conteneur vertical nommé conGallery :

Width = Parent.Width * 0.4

Occupe 40% de la largeur sur grand écran

Height = Parent.Height

Occupe toute la hauteur disponible

Fill = RGBA(245, 245, 245, 1)

Fond gris clair

Dans conGallery, insérez une Galerie verticale vide et connectez-la à votre liste SharePoint.

3.5 Zone détail/formulaire

Dans conContent, insérez un second Conteneur vertical nommé conDetail :

Width = Parent.Width - conGallery.Width - Parent.LayoutGap

Occupe l’espace restant

Height = Parent.Height

Occupe toute la hauteur disponible

Dans conDetail, insérez un Formulaire d’affichage ou un Formulaire de modification selon vos besoins.

📷 [Capture d’écran : Structure complète avec galerie à gauche et formulaire à droite]

3.6 Conteneur de pied de page (optionnel)

Dans conMain, ajoutez un Conteneur horizontal nommé conFooter :

Width = Parent.Width

Occupe toute la largeur

Height = 40

Hauteur fixe

Fill = RGBA(240, 240, 240, 1)

Fond gris clair

LayoutJustifyContent = LayoutJustifyContent.Center

Contenu centré

Étape 4 : Gérer l’adaptabilité mobile

Pour que l’application s’adapte aux petits écrans (téléphones), nous allons modifier la disposition selon la largeur de l’écran.

4.1 Basculer la direction du conteneur principal

Modifiez la propriété LayoutDirection de conContent :

If(Parent.Width < 600, LayoutDirection.Vertical, LayoutDirection.Horizontal)

Disposition verticale sur petit écran (< 600px), horizontale sinon

4.2 Adapter les largeurs des zones

Modifiez la propriété Width de conGallery :

If(conContent.LayoutDirection = LayoutDirection.Vertical, Parent.Width, Parent.Width * 0.4)

Pleine largeur en mode vertical, 40% en mode horizontal

Modifiez la propriété Height de conGallery :

If(conContent.LayoutDirection = LayoutDirection.Vertical, Parent.Height * 0.4, Parent.Height)

Hauteur partielle en mode vertical, pleine hauteur en mode horizontal

💡 Test responsive : Utilisez la fonction de redimensionnement de l’éditeur Power Apps (glissez les bords de la zone de prévisualisation) pour tester le comportement responsive avant de publier.

Étape 5 : Configurer les interactions

5.1 Sélection dans la galerie

Propriété Item du formulaire de détail :

Gallery1.Selected

Affiche les détails de l’élément sélectionné dans la galerie

5.2 Bouton Ajouter (dans l’en-tête)

Propriété OnSelect :

NewForm(FormEdit1)

Passe le formulaire en mode création

5.3 Bouton Modifier

Propriété OnSelect :

EditForm(FormEdit1)

Passe le formulaire en mode édition avec l’élément sélectionné

5.4 Bouton Enregistrer

Propriété OnSelect :

SubmitForm(FormEdit1)

Enregistre les modifications dans SharePoint

5.5 Bouton Supprimer

Propriété OnSelect :

Remove(NomDeLaListe, Gallery1.Selected)

Supprime l’élément sélectionné de SharePoint

5.6 Gestion du succès et des erreurs

Propriété OnSuccess du formulaire :

Notify("Enregistrement réussi", NotificationType.Success)

Affiche une notification de succès

Propriété OnFailure du formulaire :

Notify("Erreur lors de l'enregistrement", NotificationType.Error)

Affiche une notification d’erreur

Récapitulatif de la structure

Voici la hiérarchie des conteneurs de l’application :

Screen1
└── conMain (Conteneur vertical)
    ├── conHeader (Conteneur horizontal - en-tête)
    │   ├── lblTitle
    │   └── btnAdd
    ├── conContent (Conteneur horizontal/vertical adaptatif)
    │   ├── conGallery (zone liste)
    │   │   └── Gallery1
    │   └── conDetail (zone formulaire)
    │       └── FormEdit1
    └── conFooter (Conteneur horizontal - pied de page)

Étape 6 : Tester et publier

  1. Testez l’application en mode aperçu (F5).
  2. Redimensionnez la fenêtre pour vérifier le comportement responsive.
  3. Testez toutes les fonctionnalités : ajout, modification, suppression.
  4. Vérifiez la synchronisation avec SharePoint.
  5. Enregistrez (Ctrl+S) puis publiez l’application.
  6. Partagez avec les utilisateurs concernés.

Aide-mémoire : formules responsive

UsageFormule
Écran adaptatifMax(App.Width, App.DesignWidth)
Largeur relativeParent.Width * 0.5
Direction conditionnelleIf(Parent.Width < 600, LayoutDirection.Vertical, LayoutDirection.Horizontal)
Visibilité conditionnelleIf(App.Width > 800, true, false)
Hauteur dynamiqueParent.Height - Header.Height - Footer.Height

Document de formation - Power Apps Canvas Responsive