Kontrollerna för att visa och redigera formulär i PowerAppsEdit form and Display form controls in PowerApps

Visa, redigera och skapa en post i en datakälla.Display, edit, and create a record in a data source.

BeskrivningDescription

Om du lägger till en kontroll för att visa formulär kan användaren visa alla fält för en post eller endast de fält som du anger.If you add a Display form control, the user can display all fields of a record or only the fields that you specify. Om du lägger till en kontroll för att redigera formulär kan användaren redigera dessa fält, skapa en post och spara ändringarna i en datakälla.If you add an Edit form control, the user can edit those fields, create a record, and save those changes to a data source.

Exempelformulär och formulärvisningskontroller

Om du lägger till en gallerikontroll kan du konfigurera den för att visa en tabell i en datakälla och sedan konfigurera ett formulär för att visa valfri post som användaren väljer i galleriet.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. Du kan också lägga till en eller flera knappkontroller som användaren kan välja för att spara redigeringar, avbryta redigeringar och skapa en post.You can also add one or more Button controls that the user can select to save edits, cancel edits, and create a record. Genom att kombinera kontrollerna kan du skapa en komplett lösning.By using controls together, you can create a complete solution.

Välja posterRecord selection

För båda formulärtyperna ställer du in dess DataSource-egenskap till en tabell med poster och ställer in formulärets Item-egenskap för att visa en viss post i tabellen.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. Du kan till exempel ställa in Item-egenskapen för ett formulär till en gallerikontrolls SelectedItem-egenskap.For example, you can set the Item property of a form to the SelectedItem property of a Gallery control. När användaren väljer en post i galleriet, visas samma post i formuläret, men det kan visas fler fält i formuläret.When the user selects a record in the gallery, the same record appears in the form, except that the form can show more fields. Om användaren återgår till galleriet och väljer en annan post, ändras galleriets SelectedItem-egenskap.If the user returns to the gallery and selects a different record, the SelectedItem property of the gallery changes. Denna ändring uppdaterar formulärets Item-egenskap, som sedan visar den nyligen valda posten.This change updates the Item property of the form, which then shows the newly selected record.

Varje formulärkontroll innehåller en eller flera kortkontroller.Each form control contains one or more Card controls. Genom att ställa in ett korts DataField-egenskap, anger du vilket fält som kortet visar och annan information.By setting the DataField property of a card, you specify which field that card shows and other details.

Skapa en postCreate a record

När en kontroll för att redigera formulär befinner sig i redigeringsläget, kan användaren uppdatera den post som specificeras i formulärets Item-egenskap.When an Edit form control is in Edit mode, the user can update the record that's specified in the form's Item property. Om du ser efter returnerar Mode-egenskapen Redigera.If inspected, the Mode property returns Edit.

När en kontroll för att redigera formulär är i läget Ny ignoreras dock Item-egenskapen.When an Edit form control is in New mode, however, the Item property is ignored. Formuläret visar inte en befintlig post. Värdena i varje fält matchar i stället standardvärdena för datakällan som du har konfigurerat formuläret med.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. NewForm-funktionen medför att ett formulär växlar till det här läget.The NewForm function causes a form to switch to this mode.

Du kan till exempel ställa in Text-egenskapen för en knapp för att visa Ny och dess OnSelect-egenskap till en formel som omfattar NewForm-funktionen.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. Om användaren väljer den knappen, växlar formuläret till läget Ny så att användaren kan skapa en post som börjar med kända värden.If the user selects that button, the form switches to New mode so that the user can create a record starting with known values.

Ett formulär växlar tillbaka till redigeringsläget om antingen ResetForm-funktionen körs eller om SubmitForm-funktion körs.A form switches back to Edit mode if either the ResetForm function runs or the SubmitForm function runs successfully.

  • Du kan ställa in Text-egenskapen för en knapp för att visa Avbryt och dess OnSelect-egenskap till en formel som omfattar ResetForm-funktionen.You can set the Text property of a button to show Cancel and its OnSelect property to a formula that includes the ResetForm function. Om användaren väljer den knappen, ignoreras alla pågående ändringar och värdena i formuläret matchar återigen datakällans standardvärden.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.
  • Du kan ställa in egenskapen Text för en knapp för att visa Spara ändringar och dess egenskap OnSelect till en formel som omfattar funktionen 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. Om användaren väljer den knappen och datakällan uppdateras, återställs värdena i formuläret till datakällans standardvärden.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.

Spara ändringarSave changes

Om du skapar en Spara ändringar-knapp enligt beskrivningen i föregående avsnitt, kan användaren skapa eller uppdatera en post och sedan välja knappen för att spara de ändringarna av datakällan.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. Som alternativ kan man konfigurera en bildkontroll eller någon annan kontroll för att utföra samma uppgift, förutsatt att man konfigurerar kontrollen med SubmitForm-funktionen.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. I båda fallen ger egenskaperna Error, ErrorKind, OnSuccess och OnFailure feedback på resultatet.In any case, the Error, ErrorKind, OnSuccess, and OnFailure properties provide feedback on the outcome.

När SubmitForm-funktionen körs, validerar den först de data som användaren vill skicka.When the SubmitForm function runs, it first validates the data that user wants to submit. Om ett obligatoriskt fält inte innehåller något värde eller om ett annat värde inte stämmer överens med någon annan begränsning, ställs ErrorKind-egenskaperna in och OnFailure-formeln körs.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. Du kan konfigurera knappen Spara ändringar eller någon annan kontroll så att användaren kan välja den endast om aktuella data är giltiga (det vill säga om formulärets Valid-egenskap är 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). Observera att användaren inte bara måste åtgärda problemet utan även välja knappen Spara ändringar igen (eller ignorera ändringarna genom att välja en Avbryt-knapp, som beskrivits tidigare) för att återställa egenskaperna Error och 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.

Om aktuella data klarar valideringen, skickar SubmitForm dem till datakällan, vilket kan ta lite tid beroende på nätverkets svarstid.If the data passes validation, SubmitForm sends it to the data source, which can take some time depending on network latency.

  • Om överföringen lyckas, rensas Error-egenskapen, ErrorKind-egenskapen ställs in på ErrorKind.None och OnSuccess-formeln körs.If the submission succeeds, the Error property is cleared, the ErrorKind property is set to ErrorKind.None, and the OnSuccess formula runs. Om användaren skapade en post (det vill säga om formuläret tidigare var i läget Ny), växlas formuläret över till redigeringsläget så att användaren kan redigera den nyligen skapade posten eller en annan.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.
  • Om överföringen misslyckas, innehåller Error-egenskapen ett användarvänligt felmeddelande från datakällan som förklarar problemet.If the submission fails, the Error property contains a user-friendly error message from the data source, explaining the problem. ErrorKind-egenskapen ställs in på ett lämpligt sätt, beroende på problem, och OnFailure-formeln körs.The ErrorKind property is set appropriately, depending on the issue, and the OnFailure formula runs.

Vissa datakällor kan identifiera när två personer försöker uppdatera samma post samtidigt. I det fallet ställs ErrorKind in på ErrorKind.Conflict och lösningen är att uppdatera datakällan med den andra användarens ändringar och på nytt tillämpa ändringen som gjordes av den här användaren.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.

Tips: Om du tillhandahåller en Avbryt-knapp på ditt formulär så att användaren kan avbryta pågående ändringar, ska du lägga till ResetForm-funktionen till knappens OnSelect-egenskap, även om den egenskapen även innehåller en Navigate-funktion för att ändra skärmar.Tip: 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. I annat fall behålls användarens ändringar i formuläret.Otherwise, the form will retain the user's changes.

LayoutLayout

Korten placeras som standard i en enda kolumn för telefonappar och tre kolumner för surfplatteappar.By default, cards are placed in a single column for phone apps and three columns for tablet apps. Du kan ange hur många kolumner ett formulär har och om korten ska fästas mot dem när du konfigurerar formuläret.You can specify how many columns a form has and whether cards should snap to them as you configure the form. De här inställningarna visas inte som egenskaper eftersom de endast används för att ange egenskaperna X, Y och Width för korten.These settings aren't exposed as properties because they're used only to set the X, Y, and Width properties of the cards.

Mer information finns i Förstå dataformulärlayout.For more information, see Understand data form layout.

NyckelegenskaperKey properties

DataSource – Den datakälla som innehåller den post som användaren kommer att visa, redigera eller skapa.DataSource – The data source that contains the record that the user will show, edit, or create.

  • Om du inte ställer in den här egenskapen, kan användaren inte visa, redigera eller skapa en post och inga ytterligare metadata eller och ingen validering tillhandahålls.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 – Formulärkontrollens initiala läge.DefaultMode - The initial mode of the form control. Information om godtagbara värden och deras innebörder finns i beskrivningen av Mode nedan.See the description of Mode below for the acceptable values and their meanings.

DisplayMode – Det läge som ska användas för datakort och kontroller i formulärkontrollen.DisplayMode - The mode to use for data cards and controls within the form control.

Härlett från egenskapen Mode och kan inte anges separat:Derived from the Mode property based and cannot be set independently:

LägeMode DisplayModeDisplayMode BeskrivningDescription
FormMode.EditFormMode.Edit DisplayMode.EditDisplayMode.Edit Datakort och kontroller är redigerbara och kan acceptera ändringar i poster.Data cards and controls are editable, ready to accept changes to a record.
FormMode.NewFormMode.New DisplayMode.EditDisplayMode.Edit Datakort och kontroller är redigerbara och kan acceptera nya poster.Data cards and controls are editable, ready to accept a new record.
FormMode.ViewFormMode.View DisplayMode.ViewDisplayMode.View Datakort och kontroller är inte redigerbara eller optimerade för visning.Data cards and controls are not editable and optimized for viewing.

Error – Ett användarvänligt felmeddelande som kan visas för formuläret när SubmitForm-funktionen misslyckas.Error – A user friendly error message to display for this form when the SubmitForm function fails.

  • Denna egenskap gäller endast kontrollen Edit form.This property applies only to the Edit form control.
  • Den här egenskapen ändras endast när SubmitForm-, EditForm-, eller ResetForm-funktionen körs.This property changes only when the SubmitForm, EditForm, or ResetForm function runs.
  • Om inga fel inträffar är den här egenskapen tom och ErrorKind har ställs in på ErrorKind.None.If no error occurs, this property is blank, and ErrorKind is set to ErrorKind.None.
  • När så är möjligt anges det felmeddelande som returneras på användarens språk.When possible, the error message returned will be in the user's language. Vissa felmeddelanden kommer direkt från datakällan och är av den anledningen kanske inte på användarens språk.Some error messages come from the data source directly and may not be in the user's language.

ErrorKind – Anger vilken typ av fel som inträffat om ett fel uppstår när SubmitForm körs.ErrorKind – If an error occurs when SubmitForm runs, the kind of error that occurred.

  • Gäller endast en kontroll för att redigera formulär.Applies only to an Edit form control.
  • Den här egenskapen har samma uppräkning som Errors-funktionen.This property has the same enumeration as the Errors function. En kontroll för att redigera formulär kan returnera dessa värden:An Edit form control can return these values:
ErrorKindErrorKind BeskrivningDescription
ErrorKind.ConflictErrorKind.Conflict En annan användare ändrade samma post, vilket resulterade i en ändringskonflikt.Another user changed the same record, resulting in a change conflict. Kör funktionen Refresh för att läsa in posten på nytt och prova att göra ändringen igen.Execute the Refresh function to reload the record, and try the change again.
ErrorKind.NoneErrorKind.None Felet är av en okänd typ.The error is of an unknown kind.
ErrorKind.SyncErrorKind.Sync Datakällan rapporterade ett fel.The data source reported an error. Kontrollera Error-egenskapen för mer information.Check the Error property for more information.
ErrorKind.ValidationErrorKind.Validation Ett allmänt verifieringsproblem upptäcktes.A general validation issue was detected.

Item – Den post i aktuell DataSource som användaren vill visa eller redigera.Item – The record in the DataSource that the user will show or edit.

LastSubmit – Den senast skickade posten, inklusive eventuella servergenererade fält.LastSubmit – The last successfully submitted record, including any server generated fields.

  • Denna egenskap gäller endast kontrollen Edit form.This property applies only to the Edit form control.
  • Om datakällan automatiskt genererar eller beräknar ett fält, som ett ID-fält med ett unikt nummer, kommer LastSubmit-egenskapen att ha detta nya värde efter att SubmitForm körs.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.
  • Värdet för den här egenskapen är tillgängligt i OnSuccess-formeln.The value of this property is available in the OnSuccess formula.

Läge – Kontrollen är i läget Redigera eller Ny.Mode – The control is in Edit or New mode.

LägeMode BeskrivningDescription
FormMode.EditFormMode.Edit Användaren kan redigera en post med hjälp av formuläret.The user can edit a record by using the form. Värdena i formulärets kort är ifyllda på förhand med den befintliga posten som användaren kan ändra.The values in the form's cards are pre-populated with the existing record, for the user to change. Om SubmitForm-funktionen körs ändras en befintlig post.If the SubmitForm function runs successfully, an existing record is modified.
FormMode.NewFormMode.New Användaren kan skapa en post med hjälp av formuläret.The user can create a record by using the form. Värdena i formulärets kontroller är förifyllda med standardinställningarna för en av datakällans poster.The values in the form's controls are pre-popoulated with the defaults for a record of the data source. Om SubmitForm-funktionen körs, skapas en post.If the SubmitForm function runs successfully, an record is created.
FormMode.ViewFormMode.View Du kan visa en post med hjälp av formuläret.The user can view a record by using the form. Värdena i formulärets kontroller är förifyllda med standardinställningarna för en av datakällans poster.The values in the form's controls are pre-popoulated with the defaults for a record of the data source.

Formuläret växlar från läget Ny till läget Redigera när någon av de här ändringarna inträffar:The form switches from New mode to Edit mode when any of these changes occurs:

  • Formuläret skickas och en post skapas.The form is successfully submitted, and a record is created. Om galleriet är inställt på att automatiskt flytta val till denna nya post, är formuläret i redigeringsläget för den skapade posten så att användaren kan göra ytterligare ändringar.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.
  • EditForm-funktionen körs.The EditForm function runs.
  • ResetForm-funktionen körs.The ResetForm function runs. Som exempel kan användaren välja en Avbryt-knapp som har konfigurerats med den här funktionen.For example, the user might select a Cancel button that's been configured with this function.

OnFailure – Hur en app svarar när en dataåtgärd har misslyckats.OnFailure – How an app responds when a data operation has been unsuccessful.

  • Denna egenskap gäller endast kontrollen Edit form.This property applies only to the Edit form control.

OnReset – Hur en app svarar när en kontroll för att redigera formulär återställs.OnReset – How an app responds when an Edit form control is reset.

  • Denna egenskap gäller endast kontrollen Edit form.This property applies only to the Edit form control.

OnSuccess – Hur en app svarar när en dataåtgärd har lyckats.OnSuccess – How an app responds when a data operation has been successful.

  • Denna egenskap gäller endast kontrollen Edit form.This property applies only to the Edit form control.

Unsaved – True om kontrollen för att redigera formulär innehåller användarändringar som inte har sparats.Unsaved – True if the Edit form control contains user changes that have not been saved.

  • Denna egenskap gäller endast kontrollen Edit form.This property applies only to the Edit form control.
  • Använd den här egenskapen för att varna användaren innan denne förlorar ändringar som kanske inte har sparats.Use this property to warn the user before they lose any unsaved changes. För att hindra användaren från att välja en annan post i en gallerikontroll innan ändringarna har sparats i den aktuella posten, ställer du in galleriets egenskap DisabledForm.Unsaved och inaktiverar på så sätt uppdateringsåtgärderna.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 – De värden som skrivs tillbaka till datakällan för en post som lästs in i en formulärkontroll.Updates – The values to write back to the data source for a record loaded in a form control.

  • Denna egenskap gäller endast kontrollen Edit form.This property applies only to the Edit form control.
  • Använd den här egenskapen för att extrahera fältvärdena från korten i kontrollen.Use this property to extract the field values from the cards within the control. Du kan sedan använda dessa värden för att manuellt uppdatera datakällan med ett Patch-funktionsanrop eller någon annan metod som exponeras av en anslutning.You can then use these values to manually update the data source with a Patch function call or another method exposed by a connection. Du behöver inte använda den här egenskapen om du använder SubmitForm-funktionen.You do not need to use this property if you are using the SubmitForm function.
  • Den här egenskapen returnerar en post med värden.This property returns a record of values. Om formulärkontrollen till exempel innehåller kortkontroller för fälten Name och Quantity och värdena för Update-egenskaperna för de korten returnerar ”Widget” respektive 10, kommer Updates-egenskapen för formulärkontrollen att returnera {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 – Om en kortkontroll eller en kontroll för att redigera formulär innehåller giltiga poster som är redo att skickas till datakällan.Valid – Whether a Card or Edit form control contains valid entries, ready to be submitted to the data source.

  • Denna egenskap gäller endast kontrollen Edit form.This property applies only to the Edit form control.
  • En formulärkontrolls Valid- egenskap aggregerar Valid-egenskaperna för alla kortkontrollerna i formuläret.A Form control's Valid property aggregates the Valid properties of all the Card controls in the form. Ett formulärs Valid-egenskap är true endast om aktuella data i alla kort i formuläret är giltiga, i annat fall är formulärets Valid-egenskap 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.
  • Ställ in knappens Enabled enligt nedanstående formel om du vill aktivera en knapp för att spara ändringar bara när data i ett formulär är giltiga men ännu inte har skickats: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

Ytterligare egenskaperAdditional properties

BorderColor – En kontrolls kantlinjefärg.BorderColor – The color of a control's border.

BorderStyle – Om en kontrolls kantlinje är solid, streckad, prickad eller ingen.BorderStyle – Whether a control's border is Solid, Dashed, Dotted, or None.

BorderThickness – Tjockleken på en kontrolls kantlinje.BorderThickness – The thickness of a control's border.

Fill – Bakgrundsfärgen i en kontroll.Fill – The background color of a control.

Height – Avståndet mellan kontrollens övre och nedre kanter.Height – The distance between a control's top and bottom edges.

Visible – Om en kontroll visas eller är dold.Visible – Whether a control appears or is hidden.

Width – Avståndet mellan kontrollens högra och vänstra kanter.Width – The distance between a control's left and right edges.

X – Avståndet mellan kontrollens vänstra kant och den överordnade behållarens vänstra kant (skärmen om det inte finns någon överordnad behållare).X – The distance between the left edge of a control and the left edge of its parent container (screen if no parent container).

Y – Avståndet mellan kontrollens övre kant och den överordnade behållarens övre kant (skärmen om det inte finns någon överordnad behållare).Y – The distance between the top edge of a control and the top edge of the parent container (screen if no parent container).

Mer informationMore information

En heltäckande översikt över hur formulär fungerar finns i Förstå dataformulär.For a comprehensive overview of how forms work, see Understand data forms.