De functies Back en Navigate in Power Apps

Wijzigt welk scherm wordt weergegeven.

Samenzicht

De meeste apps bevatten meerdere schermen. Gebruik de functies Back en Navigate om te wijzigen welk scherm wordt weergegeven. Stel bijvoorbeeld de eigenschap OnSelect van een knop in op een formule die de functie Navigate bevat als u een ander scherm wilt weergeven wanneer een gebruiker die knop selecteert. In die formule kunt u een visuele overgang, zoals Fade, opgeven om te bepalen hoe het ene scherm overgaat naar het andere.

Back en Navigate wijzigen alleen welk scherm wordt weergegeven. Schermen die momenteel niet worden weergegeven, blijven werken op de achtergrond. U kunt formules maken die verwijzen naar eigenschappen van besturingselementen op andere schermen. Een gebruiker kan bijvoorbeeld de waarde van een schuifregelaar op het ene scherm wijzigen, navigeren naar een ander scherm dat die waarde in een formule gebruikt en bepalen hoe dit van invloed is op het nieuwe scherm. De gebruiker kan vervolgens terugkeren naar het oorspronkelijke scherm en zien dat de schuifregelaar zijn waarde heeft behouden.

Contextvariabelen blijven ook behouden wanneer een gebruiker tussen schermen navigeert. U kunt Navigate gebruiken om een of meer contextvariabelen in te stellen voor het scherm dat de formule weergeeft. Dit is de enige manier om een contextvariabele buiten het scherm in te stellen. U kunt deze methode gebruiken om parameters door te geven aan een scherm. Als u een ander programmeerhulpmiddel gebruikt, is deze methode vergelijkbaar met het doorgeven van parameters aan procedures.

U kunt deze functies alleen gebruiken binnen een gedragsformule.

In het eerste argument geeft u de naam op van het scherm dat moet worden weergegeven.

In het tweede argument geeft u op hoe het oude scherm overgaat naar het nieuwe scherm:

Overgangsargument Beschrijving Demonstratie
ScreenTransition.Cover Het nieuwe scherm schuift in beeld en beweegt van rechts naar links om het huidige scherm te bedekken. animatie schermovergang - bedekken.
ScreenTransition.CoverRight Het nieuwe scherm schuift in beeld en beweegt van links naar rechts om het huidige scherm te bedekken. animatie schermovergang - bedekken vanaf rechts.
ScreenTransition.Fade Het huidige scherm vervaagt en het nieuwe scherm wordt zichtbaar. animatie schermovergang - vervagen.
ScreenTransition.None (Standaard) Het nieuwe scherm vervangt snel het huidige scherm. schermovergang zonder animatie.
ScreenTransition.UnCover Het nieuwe scherm schuift uit beeld en beweegt van rechts naar links om het nieuwe scherm zichtbaar te maken. animatie schermovergang - zichtbaar maken.
ScreenTransition.UnCoverRight Het nieuwe scherm schuift uit beeld en beweegt links naar rechts om het nieuwe scherm zichtbaar te maken. animatie schermovergang - zichtbaar maken vanaf rechts.

U kunt Navigate gebruiken om contextvariabelen van het nieuwe scherm te maken of bij te werken. Als optioneel derde argument kunt u een record doorgeven die de naam van de contextvariabele bevat als kolomnaam en de nieuwe waarde voor de contextvariabele. Deze record is dezelfde als de record die u gebruikt met de functie UpdateContext.

Stel de eigenschap OnHidden van het oude scherm, de eigenschap OnVisible van het nieuwe scherm of beide in om extra wijzigingen aan te brengen tijdens de overgang. De eigenschap App.ActiveScreen wordt bijgewerkt om de wijziging te weerspiegelen.

Navigate retourneert normaal gesproken true maar retourneert false als er een fout wordt aangetroffen.

In het artikel navigeren tussen schermen krijgt u uitleg over contextvariabelen voor navigatie.

Back

De functie Back geeft het scherm weer dat het meest recent is weergegeven.

Telkens wanneer Navigate wordt aangeroepen, volgt de app het scherm dat verscheen en de overgang. U kunt Back meerdere keren aanroepen om helemaal terug te keren naar het scherm dat verscheen toen de gebruiker de app startte.

Wanneer de functie Back wordt uitgevoerd, wordt standaard de omgekeerde overgang gebruikt. Als er bijvoorbeeld een scherm verscheen via de overgang CoverRight, gebruikt Back het argument UnCover (dat is naar links) om terug te keren. Fade en None resulteren in het omgekeerde van deze argumenten. Geef een optioneel argument door aan Back om een specifieke overgang te forceren.

Back resulteert normaal gesproken in true, maar resulteert in false als de gebruiker sinds het starten van de app niet naar een ander scherm is gegaan.

Syntaxis

Back( [ Overgang ] )

  • Overgang: optioneel. De visuele overgang die moet worden gebruikt tussen het huidige scherm en het vorige scherm. Raadpleeg de lijst met geldige waarden voor dit argument eerder in dit artikel. Standaard is de overgang bij de terugkeer naar een vorig scherm het omgekeerde van de overgang waarmee het scherm verscheen.

Navigate( Screen [, Overgang [, UpdateContextRecord ] ] )

  • Screen: vereist. Het scherm dat moet worden weergegeven.
  • Overgang: optioneel. De visuele overgang die moet worden gebruikt tussen het huidige scherm en het volgende scherm. Raadpleeg de lijst met geldige waarden voor dit argument eerder in dit artikel. De standaardwaarde is None.
  • UpdateContextRecord: optioneel. Een record die de naam bevat van ten minste één kolom en een waarde voor elke kolom. Deze record werkt de contextvariabelen van het nieuwe scherm bij alsof het is doorgegeven aan de functie UpdateContext.

Voorbeelden

Formule Beschrijving Resultaat
Navigate( Details ) Geeft het scherm Details weer zonder overgang en zonder de waarde van een contextvariabele te wijzigen. Het scherm Details wordt snel weergegeven.
Navigate( Details, ScreenTransition.Fade ) Geeft het scherm Details weer met de overgang Fade. Er wordt geen waarde van een contextvariabele gewijzigd. Het huidige scherm vervaagt en het scherm Details verschijnt.
Navigate( Details, ScreenTransition.Fade, { ID: 12 } ) Geeft het scherm Details weer met de overgang Fade en werkt de waarde van de contextvariabele ID bij naar 12. Het huidige scherm vervaagt en het scherm Details verschijnt en de contextvariabele ID op dat scherm wordt ingesteld op 12.
Navigate( Details, ScreenTransition.Fade, { ID: 12 , Shade: Color.Red } ) Geeft het scherm Details weer met de overgang Fade. Werkt de waarde van de contextvariabele ID bij naar 12 en werkt de waarde van de contextvariabele Shade bij naar Color.Red. Het huidige scherm vervaagt en het scherm Details verschijnt. De contextvariabele ID op het scherm Details wordt ingesteld op 12 en de contextvariabele Shade wordt ingesteld op Color.Red. Als u de eigenschap Fill van een besturingselement op het scherm Details instelt op Shade, wordt dat besturingselement rood weergegeven.
Back() Geeft het vorige scherm weer met de standaardovergang. Standaard is de overgang bij de terugkeer naar een vorig scherm het omgekeerde van de overgang waarmee het scherm verscheen.
Back( ScreenTransition.Cover ) Geeft het vorige scherm weer met de overgang Cover. Geeft het vorige scherm weer via de overgang Cover, ongeacht de overgang waarmee het huidige scherm verscheen.

Stapsgewijs

  1. Maak een lege app.

  2. Voeg er een tweede scherm aan toe.

    De app bevat twee lege schermen: Screen1 en Screen2.

  3. Stel de eigenschap Fill van Screen2 in op de waarde Gray.

  4. Voeg op Screen2 een knop toe en stel de eigenschap OnSelect van de knop in op deze formule:

    Navigate( Screen1, ScreenTransition.Cover )
    
  5. Selecteer de knop terwijl u de Alt-toets ingedrukt houdt.

    Screen1 verschijnt met een witte achtergrond via een overgang naar links.

  6. Voeg op Screen1 een knop toe en stel de eigenschap OnSelect van de knop in op deze formule:

    Back()
    
  7. Selecteer de knop terwijl u de Alt-toets ingedrukt houdt.

    Het tweede scherm verschijnt met een grijze achtergrond via een overgang die naar rechts zichtbaar wordt (het omgekeerde van Cover).

  8. Selecteer herhaaldelijk op de knop op elk scherm om tussen de schermen te schakelen.

Een ander voorbeeld

Zie ook

Contextvariabelen gebruiken