Share via


Forstå datakort i lerretsapper

Kort-kontrollene er byggesteinene i Rediger skjema- og Vis skjema-kontrollene i lerretsapper. Skjemaet representerer hele posten, og hvert kort representerer et enkelt felt for den aktuelle posten.

Du kan lettest samhandle med kort i ruten til høyre, når du har valgt en skjemakontroll i utformingsområdet. I denne ruten kan du velge hvilke felt du vil vise, hvordan du viser hvert felt og i hvilken rekkefølge de skal vises. Dette eksemplet viser en Redigeringsskjema-kontroll i en app som er bygd fra en liste, kalt Assets.

Første skjerm.

For å komme i gang med kort kan du se Legge til et skjema og Forstå dataskjemaer. Resten av denne artikkelen inneholder mer detaljert informasjon om hvordan kort fungerer, og hvordan du kan tilpasse, eller til og med opprette dine egne kort.

Forhåndsdefinerte kort

Power Apps tilbyr et forhåndsdefinert sett med kort for strenger, tall og andre datatyper. Du kan se variasjonene som er tilgjengelige, og endre kortet som brukes for et felt, i ruten til høyre:

Valgt kort.

Et kort med én enkelt linje med tekst er valgt i dette eksemplet, men nettadresse-teksten er lengre enn det som kan vises på en enkelt linje. La oss endre dette til et flerlinjet tekst-kort for å gi brukerne våre mer plass til å redigere:

Redigering av flere linjer.

Flere felt på denne datakilden blir ikke vist, men du kan vise eller skjule et felt ved å velge avmerkingsboksen. Dette eksemplet illustrerer hvordan du viser SecurityCode-feltet.

Tilpasse et kort

Kort består av andre kontroller. I en Redigeringsskjema-kontroll skriver brukeren inn data i en standard Tekstinndata-kontroll du legger til fra Sett inn-fanen.

La oss gå gjennom et eksempel for hvordan du endrer utseendet på et kort ved å manipulere kontrollene i det.

  1. La oss først gå tilbake til kortet vi nylig satte inn for SecurityCode-feltet. Velg dette kortet ved å klikke eller trykke på det én gang:

    Velg sikkerhetskode.

  2. Velg Tekstinndata-kontrollen i kortet ved å klikke eller trykke på selve inndata-kontrollen.

    Velg tekstinndata.

  3. Flytt denne kontrollen i kortet ved å dra i valgboksen, og endre størrelsen på kontrollen ved å dra i håndtakene langs kanten av valgboksen:

    Tilpass tekstinndata.

Du kan endre størrelse på, flytte og gjøre andre endringer for kontrollene i et kort, men du kan ikke slette det uten å låse det opp først.

Låse opp et kort

I tillegg til å inneholde kontroller er kortene kontroller i seg selv, som har egenskaper og formler, akkurat som en hvilken som helst annen kontroll. Når du velger å vise et felt i et skjema, vil den høyre ruten automatisk opprette kortet for deg, og generere de nødvendige formlene. Vi kan se disse formlene i Avansert-fanen i den høyre ruten:

Avansert låst.

Vi ser umiddelbart en av de viktigste egenskapene for kortet: DataField-egenskapen. Denne egenskapen indikerer hvilket felt i datakilden som brukeren ser og kan redigere i dette kortet.

Banneret over Avansert-fanen indikerer at egenskapene for dette kortet er låst. Et låseikon vises også ved siden av DataField-, DisplayName- og Required-egenskaper. Den høyre ruten opprettet disse formlene, og låsen hindrer tilfeldige endringer i disse egenskapene.

Låseikoner.

Klikk eller trykk på banneret øverst for å låse opp kortet, slik at du kan endre disse egenskapene:

Ulåst kort.

La oss endre DisplayName for å sette et mellomrom mellom Asset og ID. Ved å gjøre denne endringen, endrer vi det som ble generert for oss. Dette kortet har en annen etikett i den høyre ruten:

Endre visningsnavn.

Vi har nå tatt kontroll over dette kortet og kan endre det ytterligere til å tilpasses vårt behov. Men vi har mistet muligheten til å endre kortet fra én representasjon til en annen (for eksempel fra én enkelt linje med tekst, til flerlinjet tekst), slik vi gjorde tidligere. Vi har transformert det forhåndsdefinerte kortet til et «egendefinert kort», som vi nå kontrollerer.

Viktig

Du kan ikke låse et kort på nytt, hvis du låser det opp. Fjern kortet og sett det inn i den høyre ruten på nytt, for å returnere et kort til låst tilstand.

Du kan endre utseendet og virkemåten til et ulåst kort på en rekke måter, for eksempel ved å legge til og slette kontrollene i det. Du kan for eksempel legge til en stjerneform fra Ikon-menyen på Sett inn-fanen.

Legg til stjerne.

Stjernen er nå en del av kortet og vil følge det, hvis du for eksempel omorganiserer kortene i skjemaet.

Som et annet eksempel kan du låse opp ImageURL-kortet, og deretter legge til en Bilde-kontroll til den fra Sett inn-fanen:

Legg til bilde.

Du kan angi Image-egenskapen på formellinjen for denne kontrollen til TextBox.Text, der TextBox er navnet på Tekstinndata-kontrollen som inneholder nettadressen:

Vis bilde.

Og nå kan vi se bildene og redigere nettadressene deres. Legg merke til at vi kunne ha brukt Parent.Default som Image-egenskapen, men den ville ikke ha blitt oppdatert hvis brukeren har endret nettadressen.

Vi kan gjøre samme på det andre skjermbildet i denne appen, der vi bruker en Visningsskjema-kontroll til å vise detaljene for en post. I dette tilfellet vil vi kanskje skjule etiketten (angi Visible-egenskapen for etiketten, ikke kortet, til usann), fordi brukeren ikke skal redigere nettadressen på denne skjermen:

Vis bildevisning.

Samhandling med et skjema

Når du låser opp et kort, kan du endre hvordan det samhandler med skjemaet som inneholder det.

Nedenfor finner du noen retningslinjer for hvordan kontroller bør fungere med kortene, og hvordan kortene bør fungere med skjemaet. Dette er bare retningslinjer. I likhet med en hvilken som helst kontroll i Power Apps, kan du opprette formler som refererer til en annen kontroll i Power Apps, og dette er ikke mindre sant for kort og kontroller i kort. Du kan være kreativ og opprette en app på mange måter.

DataField-egenskapen

Den viktigste egenskapen på kortet er DataField-egenskapen. Denne egenskapen styrer validering, hvilket felt som er oppdatert og andre aspekter av kortet.

Informasjon som flyter inn

Som en beholder gjør skjemaet ThisItem tilgjengelig for alle kortene i det. Denne posten inneholder alle feltene for den gjeldende posten av interesse.

Default-egenskapen for hvert kort bør settes til ThisItem.FieldName. I noen tilfeller vil du kanskje transformere denne verdien på vei inn. Du ønsker kanskje å formatere en streng, eller oversette verdien fra ett språk til et annet.

Alle kontrollene i kortet skal referere til Parent.Default for å komme til verdien til feltet. Denne strategien gir et nivå for innkapsling for kortet, slik at kortets Default-egenskap kan endres uten å endre de interne formlene for kortet.

DefaultValue- og Required-egenskapene blir som standard hentet fra datakildens metadata, basert på DataField-egenskapen. Du kan overstyre disse formlene med din egen logikk ved å integrere datakildens metadata ved hjelp av DataSourceInfo-funksjonen.

Informasjon som flyter ut

Etter at brukeren endrer en post ved hjelp av kontroller i kortene, lagrer SubmitForm-funksjonen disse endringene til datakilden. Når denne funksjonen kjører, leser skjemakontrollen verdiene for hvert kort sin DataField-egenskap for å vite hvilket felt som skal endres.

Skjemakontrollen leser også verdien for hvert kort sin Update-egenskap. Denne verdien vil bli lagret i datakilden for dette feltet. Dette er stedet der du kan bruke en annen transformasjon, kanskje for å reversere transformeringen som ble brukt i Default-formelen for kortet.

Valid-egenskapen styres av metadata fra datakilden, basert på DataField-egenskapen. Det er også basert på Required-egenskapen, og om Update-egenskapen inneholder en verdi. Hvis verdien i Update-egenskapen ikke er gyldig, angir Error-egenskapen en brukervennlig feilmelding.

Hvis DataField-egenskapen for et kort er tom, er kortet bare en beholder for kontroller. Valid- og Update-egenskapene til kortet vil ikke delta når skjemaet sendes.

Eksaminering av et eksempel

La oss se på kontrollene som utgjør et grunnleggende dataregistreringskort. Avstanden mellom kontroller ble øket for å vise hver kontroll tydeligere:

Analyser kort.

I denne grafikken er kontrollene i data kortet merket med.

Analyser kort.

Fire kontroller gjør at dette kortet fungerer:

Navn Type Beskrivelse
TextRequiredStar Etikett-kontrollen Viser en stjerne, som ofte brukes i skjemaer for dataregistrering, for å indikere at et felt er nødvendig.
TextFieldDisplayName Etikett-kontrollen Viser det brukervennlige navnet for dette feltet. Dette navnet kan være forskjellig fra det som er i datakildeskjemaet.
InputText Input text-kontrollen Viser startverdien for feltet og lar brukeren endrer denne verdien.
TextErrorMessage Etikett-kontrollen Viser en brukervennlig feilmelding til brukeren, hvis det oppstår et problem med validering. Sikrer også at feltet har en verdi hvis det kreves en.

Hvis du vil fylle ut disse kontrollene med data, kan egenskapene bli drevet av egenskapene til kortet, gjennom disse viktige formlene. Vær oppmerksom på at formler refererer til et bestemt felt. All informasjon kommer i stedet fra kortet.

Kontrollegenskap Formel Beskrivelse
TextRequiredStar.Visible Parent.Required Stjernen vises bare hvis feltet er nødvendig. Required er en formel som styres av deg eller metadataene, for datakilden.
TextFieldDisplayName.Text Parent.DisplayName Tekstbokskontrollen viser det brukervennlige navnet som du eller datakildens metadata gir, og som er angitt i kortets DisplayName-egenskap.
InputText.Default Parent.Default Tekstinndatakontrollen viser først verdien i feltet fra datakilden, som ble angitt fra kortet sin standardverdi.
TextErrorMessage.Text Parent.Error Error-egenskapen for kortet angir en aktuell feilmelding, hvis det oppstår et problem med validering.

Obs!

Parent.Error-egenskapen er en egenskap kun for utdata som du ikke kan angi ved hjelp av en formel. Denne egenskapen vises derfor ikke i listen over egenskaper nær øvre venstre hjørne eller i kategoriene Egenskaper eller Avansert nær høyre kant. Formellinjen foreslår denne egenskapen hvis du skriver en formel som kan referere til egenskapen.

Hvis du vil hente informasjon fra disse kontrollene, og skyve den tilbake i datakilden, har vi følgende viktige formler:

Navn på kontroll Formel Beskrivelse
DataCard.DataField "ApproverEmail" Navnet på feltet som brukeren kan vise og redigere i dette kortet.
DataCard.Update InputText.Text Verdien til å validere og skyve tilbake til datakilden når SubmitForm kjører.

Obs!

Kan du fortelle oss om språkinnstillingene for dokumentasjonen? Ta en kort undersøkelse. (vær oppmerksom på at denne undersøkelsen er på engelsk)

Undersøkelsen tar rundt sju minutter. Det blir ikke samlet inn noen personopplysninger (personvernerklæring).