Contrôles Edit form et Display form dans PowerAppsEdit form and Display form controls in PowerApps

Affichez, modifiez et créez un enregistrement dans une source de données.Display, edit, and create a record in a data source.

DescriptionDescription

Si vous ajoutez un contrôle Display form, l’utilisateur peut afficher tous les champs d’un enregistrement ou uniquement les champs que vous spécifiez.If you add a Display form control, the user can display all fields of a record or only the fields that you specify. Si vous ajoutez un contrôle Edit form, l’utilisateur peut modifier ces champs, créer un enregistrement et enregistrer ces modifications dans une source de données.If you add an Edit form control, the user can edit those fields, create a record, and save those changes to a data source.

Exemple de formulaire et de contrôles d’affichage de formulaire

Si vous ajoutez un contrôle Gallery, vous pouvez le configurer de façon qu’il affiche une table dans une source de données, puis configure un formulaire pour afficher l’enregistrement que l’utilisateur sélectionne dans la galerie.If you add a Gallery control, you can configure it to show a table in a data source and then configure a form to show whichever record the user selects in the gallery. Vous pouvez également ajouter un ou plusieurs contrôles Button que l’utilisateur peut sélectionner pour enregistrer des modifications, annuler des modifications et créer un enregistrement.You can also add one or more Button controls that the user can select to save edits, cancel edits, and create a record. En utilisant ces contrôles ensemble, vous pouvez créer une solution complète.By using controls together, you can create a complete solution.

Sélection d’enregistrementsRecord selection

Pour chaque type de formulaire, vous définissez sa propriété DataSource sur une table d’enregistrements et vous définissez la propriété Item du formulaire de façon qu’elle affiche un enregistrement spécifique dans cette table.For either type of form, you set its DataSource property to a table of records, and you set the form's Item property to show a specific record in that table. Par exemple, vous pouvez définir la propriété Item d’un formulaire sur la propriété SelectedItem d’un contrôle Gallery.For example, you can set the Item property of a form to the SelectedItem property of a Gallery control. Lorsque l’utilisateur sélectionne un enregistrement dans la galerie, le même enregistrement s’affiche dans le formulaire, à ceci près que le formulaire peut présenter plus de champs.When the user selects a record in the gallery, the same record appears in the form, except that the form can show more fields. Si l’utilisateur retourne à la galerie et sélectionne un autre enregistrement, la propriété SelectedItem de la galerie change.If the user returns to the gallery and selects a different record, the SelectedItem property of the gallery changes. Cette opération met à jour la propriété Item du formulaire, qui présente ensuite l’enregistrement qui vient d’être sélectionné.This change updates the Item property of the form, which then shows the newly selected record.

Chaque contrôle de formulaire contient un ou plusieurs contrôles Card.Each form control contains one or more Card controls. En définissant la propriété DataField d’une carte, vous spécifiez le champ que la carte affiche, ainsi que les autres informations.By setting the DataField property of a card, you specify which field that card shows and other details.

Créer un enregistrementCreate a record

Lorsqu’un contrôle Edit form se trouve en mode Édition, l’utilisateur peut mettre à jour l’enregistrement qui est spécifié dans la propriété Item du formulaire.When an Edit form control is in Edit mode, the user can update the record that's specified in the form's Item property. Si inspectée, la propriété Mode renvoie Édition.If inspected, the Mode property returns Edit.

Lorsqu’un contrôle Edit form se trouve en mode Nouveau, la propriété Item est toutefois ignorée.When an Edit form control is in New mode, however, the Item property is ignored. Le formulaire n’affiche pas d’enregistrement existant ; au lieu de cela, les valeurs de chaque champ correspondent aux valeurs par défaut de la source de données avec laquelle vous avez configuré le formulaire.The form doesn't show an existing record; instead, the values in each field match the default values of the data source with which you configured the form. La fonction NewForm fait basculer un formulaire sur ce mode.The NewForm function causes a form to switch to this mode.

Par exemple, vous pouvez définir la propriété Text d’un bouton pour indiquer Nouveau et sa propriété OnSelect sur une formule incluant la fonction NewForm.For example, you can set the Text property of a button to show New and its OnSelect property to a formula that includes the NewForm function. Si l’utilisateur sélectionne ce bouton, le formulaire bascule en mode Nouveau, afin que l’utilisateur puisse créer un enregistrement commençant par des valeurs connues.If the user selects that button, the form switches to New mode so that the user can create a record starting with known values.

Un formulaire rebascule en mode Édition si la fonction ResetForm s’exécute ou si la fonction SubmitForm s’exécute correctement.A form switches back to Edit mode if either the ResetForm function runs or the SubmitForm function runs successfully.

  • Vous pouvez définir la propriété Text d’un bouton pour indiquer Annuler et sa propriété OnSelect sur une formule incluant la fonction ResetForm.You can set the Text property of a button to show Cancel and its OnSelect property to a formula that includes the ResetForm function. Si l’utilisateur sélectionne ce bouton, toutes les modifications en cours sont ignorées et les valeurs dans le formulaire, une fois encore, correspondent aux valeurs par défaut de la source de données.If the user selects that button, any changes in progress are discarded, and the values in the form, once again, match the default values of the data source.
  • Vous pouvez définir la propriété Text d’un bouton pour indiquer Enregistrer les modifications et sa propriété OnSelect sur une formule incluant la fonction SubmitForm.You can set the Text property of a button to show Save changes and its OnSelect property to a formula that includes the SubmitForm function. Si l’utilisateur sélectionne ce bouton et si la source de données est mise à jour, les valeurs du formulaire sont réinitialisées et remplacées par les valeurs par défaut de la source de données.If the user selects that button and the data source is updated, the values in the form are reset to the default values of the data source.

Enregistrer des modificationsSave changes

Si vous créez un bouton Enregistrer les modifications comme décrit dans la section précédente, l’utilisateur peut créer ou mettre à jour un enregistrement, puis sélectionnez ce bouton pour enregistrer les modifications apportées à la source de données.If you create a Save changes button as the previous section describes, the user can create or update a record and then select that button to save those changes to the data source. Sinon, vous pouvez configurer un contrôle Image ou tout autre contrôle pour effectuer la même tâche, tant que vous configurez ce contrôle avec la fonction SubmitForm.You could, instead, configure an Image control or some other control to perform the same task, as long as you configure that control with the SubmitForm function. Dans tous les cas, les propriétés Error, ErrorKind, OnSuccess et OnFailure fournissent des indications sur le résultat.In any case, the Error, ErrorKind, OnSuccess, and OnFailure properties provide feedback on the outcome.

Lorsque la fonction SubmitForm s’exécute, elle commence par vérifier les données que l’utilisateur souhaite envoyer.When the SubmitForm function runs, it first validates the data that user wants to submit. Si un champ obligatoire ne contient pas de valeur ou si une autre valeur n’est pas conforme à une autre contrainte, les propriétés ErrorKind sont définies et la formule OnFailure s’exécute.If a required field doesn't contain a value or another value doesn't conform to some other constraint, the ErrorKind properties are set, and the OnFailure formula runs. Vous pouvez configurer le bouton Enregistrer les modifications ou tout autre contrôle de façon que l’utilisateur puisse le sélectionner uniquement si les données sont valides (autrement dit, si la propriété Valid du formulaire est définie sur true).You can configure the Save changes button or other control so that the user can select it only if the data is valid (that is, if the Valid property of the form is true). Notez que l’utilisateur doit non seulement résoudre le problème, mais également sélectionner une nouvelle fois le bouton Enregistrer les modifications (ou ignorer les modifications en sélectionnant un bouton Annuler, comme décrit précédemment) pour réinitialiser les propriétés Error et ErrorKind.Note that the user must not only correct the problem but also select the Save changes button again (or discard the changes by selecting a Cancel button, as described earlier) to reset the Error and ErrorKind properties.

Si les données sont validées, SubmitForm les envoie à la source de données, ce qui peut prendre un certain temps en fonction de la latence du réseau.If the data passes validation, SubmitForm sends it to the data source, which can take some time depending on network latency.

  • Si l’envoi se déroule correctement, la propriété Error propriété est désactivée, la propriété ErrorKind est définie sur ErrorKind.None et la formule OnSuccess s’exécute.If the submission succeeds, the Error property is cleared, the ErrorKind property is set to ErrorKind.None, and the OnSuccess formula runs. Si l’utilisateur a créé un enregistrement (autrement dit, si le formulaire était précédemment en mode Nouveau), le formulaire bascule en mode Édition, afin que l’utilisateur puisse modifier l’enregistrement qui vient d’être créé ou un autre enregistrement.If the user created a record (that is, if the form was previously in New mode), the form is switched to Edit mode so that the user can edit the newly created record or a different one.
  • Si l’envoi échoue, la propriété Error contient un message d’erreur convivial en provenance de la source de données, expliquant le problème.If the submission fails, the Error property contains a user-friendly error message from the data source, explaining the problem. La propriété ErrorKind est définie correctement, en fonction du problème, et la formule OnFailure s’exécute.The ErrorKind property is set appropriately, depending on the issue, and the OnFailure formula runs.

Certaines sources de données peuvent détecter lorsque deux personnes essaient de mettre à jour le même enregistrement en même temps. Dans ce cas, ErrorKind est défini sur ErrorKind.Conflict, et la solution consiste à actualiser la source de données avec les autres modifications de l’utilisateur et à réappliquer la modification effectuée par cet utilisateur.Some data sources can detect when two people try to update the same record at the same time In this case, ErrorKind is set to ErrorKind.Conflict, and the remedy is to refresh the data source with the other user's changes and reapply the change made by this user.

Conseil

Si vous proposez un bouton Annuler sur votre formulaire afin que l’utilisateur puisse annuler les modifications en cours, ajoutez la fonction ResetForm à la propriété OnSelect du bouton même si cette propriété contient également une fonction Navigate pour modifier les écrans.If you offer a Cancel button on your form so that the user can abandon changes in progress, add the ResetForm function to the button's OnSelect property even that property also contains a Navigate function to change screens. Dans le cas contraire, le formulaire conservera les modifications apportées par l’utilisateur.Otherwise, the form will retain the user's changes.

Mise en pageLayout

Par défaut, les cartes sont placées dans une colonne unique pour les applications destinées aux smartphones et dans trois colonnes pour les applications destinées aux tablettes.By default, cards are placed in a single column for phone apps and three columns for tablet apps. Vous pouvez spécifier le nombre de colonnes que comprend un formulaire et si les cartes doivent s’aligner sur les colonnes lorsque vous configurez le formulaire.You can specify how many columns a form has and whether cards should snap to them as you configure the form. Ces paramètres ne sont pas exposés en tant que propriétés, car ils sont utilisés uniquement pour définir les propriétés X, Y, et Width des cartes.These settings aren't exposed as properties because they're used only to set the X, Y, and Width properties of the cards.

Pour plus d’informations, voir Comprendre la mise en page du formulaire de données.For more information, see Understand data form layout.

Principales propriétésKey properties

DataSource : source de données qui contient l’enregistrement que l’utilisateur affichera, modifiera ou créera.DataSource – The data source that contains the record that the user will show, edit, or create.

  • Si vous ne définissez pas cette propriété, l’utilisateur ne peut pas afficher, modifier ou créer un enregistrement, et aucune validation ou métadonnée supplémentaire n’est fournie.If you don't set this property, the user can't show, edit, or create a record, and no additional metadata or validation is provided.

DefaultMode: mode initial d’un contrôle de formulaire.DefaultMode - The initial mode of the form control. Consultez la description de Mode ci-dessous pour voir les valeurs acceptables et leurs significations.See the description of Mode below for the acceptable values and their meanings.

DisplayMode : mode à utiliser pour les cartes de données et les contrôles dans le contrôle de formulaire.DisplayMode - The mode to use for data cards and controls within the form control.

Dérivé de la propriété Mode et ne peut pas être défini indépendamment :Derived from the Mode property based and cannot be set independently:

ModeMode DisplayModeDisplayMode DescriptionDescription
FormMode.EditFormMode.Edit DisplayMode.EditDisplayMode.Edit Les contrôles et les cartes de données sont modifiables, prêts à accepter les modifications apportées à un enregistrement.Data cards and controls are editable, ready to accept changes to a record.
FormMode.NewFormMode.New DisplayMode.EditDisplayMode.Edit Les contrôles et les cartes de données sont modifiables, prêts à accepter un nouvel enregistrement.Data cards and controls are editable, ready to accept a new record.
FormMode.ViewFormMode.View DisplayMode.ViewDisplayMode.View Les contrôles et les cartes de données ne sont pas modifiables ni optimisés pour l’affichage.Data cards and controls are not editable and optimized for viewing.

Error : un message d’erreur convivial à afficher pour ce formulaire lorsque la fonction SubmitForm échoue.Error – A user friendly error message to display for this form when the SubmitForm function fails.

  • Cette propriété s’applique uniquement au contrôle Edit form.This property applies only to the Edit form control.
  • Cette propriété est modifiée uniquement lorsque la fonction SubmitForm, EditForm ou ResetForm s’exécute.This property changes only when the SubmitForm, EditForm, or ResetForm function runs.
  • Si aucune erreur ne se produit, cette propriété est vide, et ErrorKind est défini sur ErrorKind.None.If no error occurs, this property is blank, and ErrorKind is set to ErrorKind.None.
  • Lorsque cela est possible, le message d’erreur renvoyé sera dans la langue de l’utilisateur.When possible, the error message returned will be in the user's language. Certains messages d’erreur proviennent directement de la source de données et ne peuvent pas être dans la langue de l’utilisateur.Some error messages come from the data source directly and may not be in the user's language.

ErrorKind : si une erreur se produit lorsque SubmitForm s’exécute, le type d’erreur qui s’est produit est indiqué.ErrorKind – If an error occurs when SubmitForm runs, the kind of error that occurred.

  • S’applique uniquement à un contrôle Edit form.Applies only to an Edit form control.
  • L’énumération de cette propriété est identique à celle de la fonction Errors.This property has the same enumeration as the Errors function. Un contrôle Edit form peut renvoyer ces valeurs :An Edit form control can return these values:
ErrorKindErrorKind DescriptionDescription
ErrorKind.ConflictErrorKind.Conflict Un autre utilisateur modifie le même enregistrement, ce qui entraîne un conflit de modifications.Another user changed the same record, resulting in a change conflict. Exécutez la fonction Refresh pour recharger l’enregistrement, puis réessayez d’effectuer la modification.Execute the Refresh function to reload the record, and try the change again.
ErrorKind.NoneErrorKind.None L’erreur est d’un type inconnu.The error is of an unknown kind.
ErrorKind.SyncErrorKind.Sync La source de données a signalé une erreur.The data source reported an error. Vérifiez la propriété Error pour plus d’informations.Check the Error property for more information.
ErrorKind.ValidationErrorKind.Validation Un problème de validation générale a été détecté.A general validation issue was detected.

Item : l’enregistrement dans DataSource que l’utilisateur affichera ou modifiera.Item – The record in the DataSource that the user will show or edit.

LastSubmit : dernier enregistrement envoyé avec succès, y compris les champs générés par le serveur.LastSubmit – The last successfully submitted record, including any server generated fields.

  • Cette propriété s’applique uniquement au contrôle Edit form.This property applies only to the Edit form control.
  • Si la source de données génère ou calcule automatiquement des champs, comme un champ ID avec un numéro unique, la propriété LastSubmit aura cette nouvelle valeur après l’exécution correcte de SubmitForm.If the data source automatically generates or calculates any fields, such as an ID field with a unique number, the LastSubmit property will have this new value after SubmitForm successfully runs.
  • La valeur de cette propriété est disponible dans la formule OnSuccess.The value of this property is available in the OnSuccess formula.

Mode : le contrôle est en mode Édition ou Nouveau.Mode – The control is in Edit or New mode.

ModeMode DescriptionDescription
FormMode.EditFormMode.Edit L’utilisateur peut modifier un enregistrement à l’aide du formulaire.The user can edit a record by using the form. Les valeurs dans les cartes du formulaire sont préremplies avec l’enregistrement existant et l’utilisateur peut les modifier.The values in the form's cards are pre-populated with the existing record, for the user to change. Si la fonction SubmitForm s’exécute correctement, un enregistrement existant est modifié.If the SubmitForm function runs successfully, an existing record is modified.
FormMode.NewFormMode.New L’utilisateur peut créer un enregistrement à l’aide du formulaire.The user can create a record by using the form. Les valeurs dans les contrôles de formulaire sont préremplies avec les valeurs par défaut pour un enregistrement de la source de données.The values in the form's controls are pre-popoulated with the defaults for a record of the data source. Si la fonction SubmitForm s’exécute correctement, un enregistrement est créé.If the SubmitForm function runs successfully, an record is created.
FormMode.ViewFormMode.View L’utilisateur peut afficher un enregistrement à l’aide du formulaire.The user can view a record by using the form. Les valeurs dans les contrôles de formulaire sont préremplies avec les valeurs par défaut pour un enregistrement de la source de données.The values in the form's controls are pre-popoulated with the defaults for a record of the data source.

Le formulaire bascule du mode Nouveau au mode Édition lorsque l’une des modifications suivantes se produit :The form switches from New mode to Edit mode when any of these changes occurs:

  • L’envoi du formulaire se déroule correctement et un enregistrement est créé.The form is successfully submitted, and a record is created. Si la galerie est définie pour déplacer automatiquement la sélection vers ce nouvel enregistrement, le formulaire sera en mode Édition pour l’enregistrement créé, afin que l’utilisateur puisse apporter des modifications supplémentaires.If the gallery is set to automatically move selection to this new record, the form will be in Edit mode for the created record so that the user can make additional changes.
  • La fonction EditForm s’exécute.The EditForm function runs.
  • La fonction ResetForm s’exécute.The ResetForm function runs. Par exemple, l’utilisateur peut sélectionner un bouton Annuler qui a été configuré avec cette fonction.For example, the user might select a Cancel button that's been configured with this function.

OnFailure : façon dont une application répond lorsqu’une opération de données ne s’est pas déroulée correctement.OnFailure – How an app responds when a data operation has been unsuccessful.

  • Cette propriété s’applique uniquement au contrôle Edit form.This property applies only to the Edit form control.

OnReset : façon dont une application répond lorsqu’un contrôle Edit form est réinitialisé.OnReset – How an app responds when an Edit form control is reset.

  • Cette propriété s’applique uniquement au contrôle Edit form.This property applies only to the Edit form control.

OnSuccess : façon dont une application répond lorsqu’une opération de données s’est déroulée correctement.OnSuccess – How an app responds when a data operation has been successful.

  • Cette propriété s’applique uniquement au contrôle Edit form.This property applies only to the Edit form control.

Unsaved : défini sur true si le contrôle Edit form contient des modifications utilisateur qui n’ont pas été enregistrées.Unsaved – True if the Edit form control contains user changes that have not been saved.

  • Cette propriété s’applique uniquement au contrôle Edit form.This property applies only to the Edit form control.
  • Utilisez cette propriété pour avertir l’utilisateur avant qu’il ne perde toutes les modifications non enregistrées.Use this property to warn the user before they lose any unsaved changes. Pour empêcher l’utilisateur de sélectionner un autre enregistrement dans un contrôle Gallery avant d’enregistrer les modifications apportées à l’enregistrement actuel, définissez la propriété Disabled sur Form.Unsaved et de la même manière, désactivez les opérations d’actualisation.To prevent the user from selecting a different record in a Gallery control before saving changes to the current record, set the gallery's Disabled property to Form.Unsaved and, likewise, disable refresh operations.

Updates : valeurs à écrire dans la source de données pour un enregistrement chargé dans un contrôle de formulaire.Updates – The values to write back to the data source for a record loaded in a form control.

  • Cette propriété s’applique uniquement au contrôle Edit form.This property applies only to the Edit form control.
  • Utilisez cette propriété pour extraire les valeurs de champ des cartes dans le contrôle.Use this property to extract the field values from the cards within the control. Vous pouvez ensuite utiliser ces valeurs pour mettre à jour manuellement la source de données avec un appel de fonction Patch ou une autre méthode exposée par une connexion.You can then use these values to manually update the data source with a Patch function call or another method exposed by a connection. Vous n’avez pas besoin de cette propriété si vous utilisez la fonction SubmitForm.You do not need to use this property if you are using the SubmitForm function.
  • Cette propriété renvoie un enregistrement des valeurs.This property returns a record of values. Par exemple, si le contrôle de formulaire contient des contrôles de carte pour les champs Nom et Quantité et si les valeurs des propriétés Updates pour ces cartes renvoient, respectivement, « Widget » et « 10 », la propriété Updates du contrôle de formulaire renvoie { Name: "Widget", Quantity: 10 }.For example, if the form control contains card controls for Name and Quantity fields, and the values of the Update properties for those cards return "Widget" and 10 respectively, then the Updates property for the form control would return { Name: "Widget", Quantity: 10 }.

Valid : indique si un contrôle Card ou Edit form contient des entrées valides, prêtes à être envoyées à la source de données.Valid – Whether a Card or Edit form control contains valid entries, ready to be submitted to the data source.

  • Cette propriété s’applique uniquement au contrôle Edit form.This property applies only to the Edit form control.
  • Une propriété Valid d’un contrôle Form agrège les propriétés Valid de tous les contrôles Card dans le formulaire.A Form control's Valid property aggregates the Valid properties of all the Card controls in the form. Une propriété Valid est définie sur true uniquement si les données de toutes les cartes dans ce formulaire sont valides ; dans le cas contraire, la propriété Valid du formulaire est définie sur false.A form's Valid property is true only if the data in all cards in that form is valid; otherwise, the form's Valid property is false.
  • Pour qu’un bouton puisse enregistrer les modifications uniquement lorsque les données dans un formulaire sont valides mais qu’elles n’ont pas encore été envoyées, définissez la propriété Enabled du bouton sur la formule suivante :To enable a button to save changes only when the data in a form is valid but hasn't yet been submitted, set the button's Enabled to this formula:

    SubmitButton.Enabled = IsBlank( Form.Error ) || Form.ValidSubmitButton.Enabled = IsBlank( Form.Error ) || Form.Valid

Propriétés supplémentairesAdditional properties

BorderColor : couleur de bordure du contrôle.BorderColor – The color of a control's border.

BorderStyle : indique si la bordure d’un contrôle est unie, discontinue, en pointillés ou s’il n’y en a aucune.BorderStyle – Whether a control's border is Solid, Dashed, Dotted, or None.

BorderThickness : épaisseur de bordure d’un contrôle.BorderThickness – The thickness of a control's border.

Fill : couleur d’arrière-plan d’un contrôle.Fill – The background color of a control.

Height : distance entre le haut et le bas d’un contrôle.Height – The distance between a control's top and bottom edges.

Visible : indique si un contrôle est visible ou est masqué.Visible – Whether a control appears or is hidden.

Width : distance entre les côtés droit et gauche d’un contrôle.Width – The distance between a control's left and right edges.

X : distance entre le bord gauche d’un contrôle et le bord gauche de son conteneur parent (ou l’écran s’il n’y a pas de conteneur parent).X – The distance between the left edge of a control and the left edge of its parent container (screen if no parent container).

Y : distance entre le bord supérieur d’un contrôle et le bord supérieur du conteneur parent (ou l’écran s’il n’y a pas de conteneur parent).Y – The distance between the top edge of a control and the top edge of the parent container (screen if no parent container).

Plus d’informationsMore information

Pour une vue d’ensemble complète du fonctionnement des formulaires, voir Comprendre les formulaires de données.For a comprehensive overview of how forms work, see Understand data forms.