Propriétés du composant de canevas (expérimental)

Les composants de canevas permettent aux créateurs de créer différents types de propriétés pour relayer les valeurs ou la logique entre le composant et l’application qui héberge le composant. Les propriétés sont une partie essentielle de la création de composants interactifs et réutilisables.

Important

Types de propriétés

Quatre types de propriétés sont disponibles pour les créateurs :

  1. Propriétés des données : les propriétés des données se rapportent aux données, comme une valeur de couleur ou de texte. Une propriété Données peut être définie sur Entrantes ou Sortantes, qui indique si le composant fournit des données à l’application (Sortantes) ou si l’application fournit des données au composant (Entrantes). Les propriétés de données sont les seules propriétés qui participent au flux de données de l’application.
  2. Propriétés de fonction : les propriétés de fonction sont liées à la logique, comme effectuer un calcul basé sur des paramètres spécifiques ou modifier du texte. Une propriété Fonction peut être définie sur Entrantes ou Sortantes, qui indique si le composant fournit une fonction que l’application peut appeler (Sortantes) ou l’application fournit une fonction que le composant peut appeler (Entrantes). Les propriétés Fonction ne participent pas au flux de données d’une application et ne peuvent pas utiliser de variables de composant ou d’application.
  3. Propriétés d’action : les propriétés d’action sont un type de propriété qui traite de la logique et se comporte comme une Fonction sortante. Ainsi, le composant a la logique définie, et cette logique peut utiliser des expressions chaînées et manipuler des collections ou des variables (« comportement »). Par exemple, une propriété Clear() Action peut fournir une fonctionnalité que l’application peut appeler pour effacer certaines valeurs dans le composant, ou une propriété Save() Action qui met à jour une source de données.
  4. Propriétés d’événement : les propriétés d’événement sont une catégorie de propriété qui implique une logique et fonctionne comme une Fonction entrante. Ainsi, l’application définit la logique définie, que le composant peut appeler et cette logique peut utiliser des expressions chaînées et manipuler des collections ou des variables (« comportement »). Généralement, les noms de ces propriétés reflètent un événement tel que OnSelect ou OnChanged.

Propriété de données

L’utilisation d’une propriété de données est facile à imaginer. Les contrôles standard dans les applications ont généralement plusieurs propriétés de données, pour définir les valeurs par défaut, la couleur du texte, la taille, etc. Regardons un exemple simple où nous souhaitons rendre les propriétés d’un contrôle dans le composant disponibles pour l’application d’hébergement. Dans cet exemple, notre composant est nommé Component1. Nous allons mettre un contrôle de curseur à l’intérieur de notre composant. Nous aurons une propriété entrante pour spécifier la couleur de l’application consommatrice, et une propriété sortante où le composant peut dire à l’application quelle est la valeur actuelle du curseur. L’exemple suivant suppose que votre composant contient un contrôle curseur nommé Slider.

  1. Dans le volet de propriété du composant, sélectionnez Nouvelle propriété personnalisée.
  2. Dans le volet Nouvelle propriété personnalisée , saisissez le nom complet Slider Color.
  3. Sélectionnez Type de propriété de Données et sélectionnez la valeur Définition de propriété entrante.
  4. Dans la liste déroulante Type de données, sélectionnez Couleur.
  5. Sélectionnez Créer.

Ensuite, sélectionnez le contrôle Slider1 curseur . Recherchez sa propriété ValueFill et dans la barre de formule, saisissez Component1.SliderColor. Component1 fait référence au nom de notre composant, et SliderColor est le nom de la propriété que nous avons ajoutée précédemment.

Maintenant, notre composant a une propriété SliderColor qui peut être définie dans l’application consommatrice, pour transmettre une couleur dans le composant afin de définir la propriété ValueFill du curseur.

Nous souhaitons également fournir la valeur du curseur à l’application consommatrice. Pour ce faire, nous allons ajouter une propriété sortante.

  1. Dans le volet de propriété du composant, sélectionnez Nouvelle propriété personnalisée.
  2. Dans le volet Nouvelle propriété personnalisée , saisissez le nom complet Slider Value.
  3. Sélectionnez Type de propriété de Données et sélectionnez la valeur Définition de propriété sortante.
  4. Dans la liste déroulante Type de données, sélectionnez Numéro.
  5. Sélectionnez Créer.

Lorsqu’une propriété Données est sortante, le composant fournit la valeur à l’application consommatrice. Pour définir la formule pour cela, nous devons définir la nouvelle propriété SliderValue dans le composant sur la propriété Value du curseur.

  1. Dans le volet de propriété du composant, cliquez sur la propriété Slider Value.
  2. Dans la barre de formule à droite, remplacez la valeur par défaut de 100avec la formule suivante : Slider1.Value.

Désormais, la propriété SliderValue de notre composant reflétera la valeur du curseur à l’intérieur du composant, qui pourra ensuite être lue à partir de l’application consommatrice.

Propriété Fonction

Une propriété de fonction contient une expression qui renvoie une valeur. En règle générale, la fonction prend des arguments qu’elle utilise pour calculer ou déterminer la valeur à renvoyer.

Notes

Les propriétés de fonction ne peuvent actuellement pas accéder aux variables ou aux valeurs et propriétés des composants, et ne peuvent pas déclencher de flux de données. Toutes les valeurs requises doivent être transmises en tant qu’arguments.

Une fonction sortante est un moyen simple de créer une fonction personnalisée pour Power Apps. Le composant définit une fonction sortante avec une expression qui prend des arguments et renvoie une valeur. Cette fonction peut ensuite être utilisée dans une application en utilisant le nom du composant (par exemple Component1) en appelant Component1.MyFunction(arg1, arg2).

Une fonction entrante est un moyen pour une application consommatrice de fournir une logique à un composant, similaire à un pointeur de fonction ou à une fonction de rappel. Par exemple, votre composant peut traiter des noms de personnes et avoir une fonction d’entrée avec des arguments firstname et lastname et respecte une chaîne en retour. L’application pourrait définir l’expression de la fonction à renvoyer $"{firstname} {lastname}" ou elle pourrait choisir de définir une expression pour $"{lastname}, {firstname}". Le composant peut simplement appeler la fonction fournie par le créateur de l’application et utiliser la chaîne renvoyée.

Propriété Action

Les propriétés d’action sont similaires aux propriétés de fonction de type sortante, mais elles autorisent les formules d’effets secondaires et le chaînage d’expressions. Un composant peut avoir une propriété d’action nommée AddRecord qui permet à l’application d’ajouter un enregistrement à une collection à l’intérieur du composant, ou une action Reset qui efface les variables ou les collections à l’intérieur du composant.

Dans l’exemple des exemples de curseur utilisés pour la Propriété de données précédent, nous pouvons introduire une propriété d’action appelée ResetValue pour remettre le curseur à sa valeur par défaut. Nous pouvons utiliser la formule Reset( Slider1 ) pour ça. Désormais, les instances de notre composant dans l’application peuvent appeler Component1.ResetValue() pour remettre le curseur à la valeur par défaut.

Propriété Event

Il existe de nombreuses propriétés de type Event courantes, en fait des propriétés de fonction de comportement d’entrée, dans les contrôles standard. OnSelect sur le contrôle du bouton est l’exemple le plus évident. Un composant peut définir n’importe quel nombre de propriétés d’événement et appeler ces événements comme une fonction. Par exemple, un composant doté d’un contrôle de bouton peut avoir une propriété d’événement nommée OnButtonClicked. Dans le contrôle des boutons OnSelect le composant peut appeler sa propriété Component1.OnButtonClicked(). Une application consommatrice peut alors définir sa propre logique pour cette propriété, pour agir lorsque le bouton à l’intérieur du composant est enfoncé.

Valeurs par défaut des propriétés ou des arguments

Les valeurs par défaut peuvent fournir une valeur par défaut pour un argument ou une propriété au cas où aucune n’est définie. Cela n’a pas de sens pour certains types de propriétés. Cependant, dans certains cas, ils peuvent être utilisés pour fournir un schéma attendu pour un enregistrement. En fournissant un enregistrement par défaut, un type d’enregistrement est établi comme schéma attendu.

Par exemple, une propriété Action nommée AddRecord accepte un enregistrement à ajouter à une collection locale. Pour fournir le schéma de l’enregistrement attendu, un fabricant doit ajouter une valeur par défaut pour cet argument de la propriété AddRecord.