Funkcje Back i Navigate w usłudze PowerAppsBack and Navigate functions in PowerApps

Te funkcje umożliwiają zmianę wyświetlanego ekranu.Changes which screen is displayed.

PrzeglądOverview

Większość aplikacji zawiera wiele ekranów.Most apps contain multiple screens. Użyj funkcji Back i Navigate, aby zmienić wyświetlany ekran.Use the Back and Navigate function to change which screen is displayed. Na przykład ustaw dla właściwości OnSelect przycisku formułę, która zawiera funkcję Navigate, aby wyświetlić inny ekran po wybraniu przez użytkownika tego przycisku.For example, set the OnSelect property of a button to a formula that includes a Navigate function if you want to show a different screen when a user selects that button. W tej formule można określić przejście wizualne, takie jak przenikanie, aby kontrolować sposób zmiany ekranu.In that formula, you can specify a visual transition, such as Fade, to control how one screen changes to another.

Funkcje Back i Navigate zmieniają tylko wyświetlany ekran.Back and Navigate change only which screen is displayed. Ekrany, które nie są aktualnie wyświetlane, będą w dalszym ciągu działać w tle.Screens that aren't currently displayed continue to operate behind the scenes. Można utworzyć formuły, które przywołują właściwości kontrolek na innym ekranie.You can build formulas that refer to properties of controls on another screen. Na przykład użytkownik może zmienić wartość suwaka na jednym ekranie, przejść do innego ekranu, który używa tej wartości w formule, i zobaczyć wpływ zmiany na nowym ekranie.For example, a user can change the value of a slider on one screen, navigate to a different screen that uses that value in a formula, and see how it affects what happens in the new screen. Użytkownik może następnie wrócić do początkowego ekranu i zobaczyć, że wartość suwaka została zachowana.The user can then navigate back to the original screen and see that the slider has retained its value.

Zmienne kontekstowe są także zachowywane podczas przechodzenia między ekranami.Context variables are also preserved when a user navigates between screens. Możesz użyć funkcji Navigate do ustawienia jednej lub wielu zmiennych kontekstowych dla ekranu, który wyświetla formuła. Jest to jedyny sposób na ustawienie zmiennej kontekstowej spoza ekranu.You can use Navigate to set one or more context variables for the screen that the formula will display, which is the only way to set a context variable from outside the screen. Ta metoda umożliwia przekazanie parametrów do ekranu.You can use this approach to pass parameters to a screen. Jest ona podobna do przekazywania parametrów do procedur stosowanego w innych narzędziach programistycznych.If you've used another programming tool, this approach is similar to passing parameters to procedures.

OpisDescription

WsteczBack

Funkcja Back wyświetla ekran, który był ostatnio wyświetlony.The Back function displays the screen that was most recently displayed. Nie określa się dla niej żadnych argumentów.You don't specify any arguments for this function.

Pierwszy argument określa nazwę ekranu do wyświetlenia.In the first argument, specify the name of the screen to display.

Drugi argument określa sposób zmiany starego ekranu na nowy:In the second argument, specify how the old screen changes to the new screen:

Argument przejściaTransition Argument OpisDescription
ScreenTransition.CoverScreenTransition.Cover Nowy ekran wsuwa się, przesłaniając bieżący ekran.The new screen slides into view, covering the current screen.
ScreenTransition.FadeScreenTransition.Fade Stary ekran zanika, odsłaniając nowy ekran.The old screen fades away to reveal the new screen.
ScreenTransition.NoneScreenTransition.None Stary ekran jest szybko zastępowany nowym ekranem.The old screen is quickly replaced with the new screen.
ScreenTransition.UnCoverScreenTransition.UnCover Stary ekran wysuwa się, odsłaniając nowy ekran.The old screen slides out of view, uncovering the new screen.

Możesz użyć funkcji Navigate do utworzenia lub zaktualizowania zmiennych kontekstowych nowego ekranu.You can use Navigate to create or update context variables of the new screen. Jako opcjonalny trzeci argument przekaż rekord zawierający nazwę zmiennej kontekstowej jako nazwę kolumny i nową wartość dla zmiennej kontekstowej.As an optional third argument, pass a record that contains the context-variable name as a column name and the new value for the context variable. Ten rekord jest taki sam jak rekord używany dla funkcji UpdateContext.This record is the same as the record that you use with the UpdateContext function.

Ustaw właściwość OnHidden starego ekranu, właściwość OnVisible nowego ekranu lub obie te właściwości, aby wykonać dodatkowe zmiany podczas przejścia.Set the OnHidden property of the old screen, the OnVisible property of the new screen, or both to make additional changes during the transition. Właściwość App.ActiveScreen zostanie zaktualizowana w celu odzwierciedlenia zmiany.The App.ActiveScreen property will be updated to reflect the change.

Funkcja Back zwykle zwraca wartość true, lecz zwraca wartość false, jeśli użytkownik jest na pierwszym ekranie i nie ma poprzedniego ekranu.Back normally returns true but returns false if the user is on the first screen shown and there is no previous screen. Funkcja Navigate zwykle zwraca wartość true, lecz zwraca wartość false w przypadku problemu z jednym z argumentów.Navigate normally returns true but returns false if there is a problem with one of its arguments.

Tych funkcji można używać tylko wewnątrz formuły zachowania.You can use these functions only within a behavior formula.

SkładniaSyntax

Back()Back()

Navigate( Ekran, Przejście [, RekordAktualizacjiKontekstu ] )Navigate( Screen, Transition [, UpdateContextRecord ] )

  • Ekran — wartość wymagana.Screen - Required. Ekran do wyświetlenia.The screen to display.
  • Przejście — wartość wymagana.Transition - Required. Przejście wizualne między bieżącym ekranem i następnym ekranem.The visual transition to use between the current screen and the next screen. Zobacz listę prawidłowych wartości tego argumentu we wcześniejszej części tego tematu.See the list of valid values for this argument earlier in this topic.
  • RekordAktualizacjiKontekstu — wartość opcjonalna.UpdateContextRecord - Optional. Rekord zawierający nazwę co najmniej jednej kolumny i wartość dla każdej kolumny.A record that contains the name of at least one column and a value for each column. Ten rekord umożliwia zaktualizowanie zmiennych kontekstowych nowego ekranu, tak jakby zostały przekazane do funkcji UpdateContext.This record updates the context variables of the new screen as if passed to the UpdateContext function.

PrzykładyExamples

FormułaFormula OpisDescription WynikResult
Navigate( Szczegóły, ScreenTransition.None )Navigate( Details, ScreenTransition.None ) Wyświetla ekran Szczegóły bez przejścia ani zmiany wartości zmiennej kontekstowej.Displays the Details screen with no transition or change in value for a context variable. Ekran Szczegóły zostanie wyświetlony szybko.The Details screen appears quickly.
Navigate( Szczegóły, ScreenTransition.Fade )Navigate( Details, ScreenTransition.Fade ) Wyświetla ekran Szczegóły z przejściem Fade.Displays the Details screen with a Fade transition. Wartość żadnej zmiennej kontekstowej nie zostanie zmieniona.No value of a context variable is changed. Bieżący ekran zanika, stopniowo odkrywając ekran Szczegóły.The current screen fades away to show the Details screen.
Navigate( Szczegóły, ScreenTransition.Fade, { ID: 12 } )Navigate( Details, ScreenTransition.Fade, { ID: 12 } ) Wyświetla ekran Szczegóły z przejściem Fade i aktualizuje zmienną kontekstową ID za pomocą wartości 12.Displays the Details screen with a Fade transition, and updates the value of the ID context variable to 12. Bieżący ekran zanika, stopniowo odkrywając ekran Szczegóły, a dla zmiennej kontekstowej ID na tym ekranie jest ustawiana wartość 12.The current screen fades away to show the Details screen, and the context variable ID on that screen is set to 12.
Navigate( Szczegóły, ScreenTransition.Fade, { ID: 12 , Shade: Color.Red } )Navigate( Details, ScreenTransition.Fade, { ID: 12 , Shade: Color.Red } ) Wyświetla ekran Szczegóły z przejściem Fade.Displays the Details screen with a Fade transition. Aktualizuje zmienną kontekstową ID za pomocą wartości 12 i aktualizuje zmienną kontekstową Shade za pomocą wartości Color.Red.Updates the value of the ID context variable to 12, and updates the value of the Shade context variable to Color.Red. Bieżący ekran zanika, stopniowo odkrywając ekran Szczegóły.The current screen fades away to show the Details screen. Dla zmiennej kontekstowej ID na ekranie Szczegóły jest ustawiana wartość 12, a dla zmiennej kontekstowej Shade jest ustawiana wartość Color.Red.The context variable ID on the Details screen is set to 12, and the context variable Shade is set to Color.Red. Jeśli ustawisz dla właściwości Fill kontrolki na ekranie Szczegóły wartość Shade, ta kontrolka będzie wyświetlana na czerwono.If you set the Fill property of a control on the Details screen to Shade, that control would display as red.

Krok po krokuStep-by-step

  1. Nadaj ekranowi domyślnemu nazwę EkranDomyślny, dodaj do niego etykietę i ustaw dla właściwości Text tej etykiety wartość Domyślne.Name the default screen DefaultScreen, add a label to it, and set the Text property of that label so that it shows Default.
  2. Dodaj ekran i nadaj mu nazwę EkranDodatkowy.Add a screen, and name it AddlScreen.
  3. Dodaj etykietę do ekranu EkranDodatkowy i ustaw właściwość Text etykiety, tak aby wyświetlała tekst Dodatkowy.Add a label to AddlScreen, and set the Text property of the label so that it shows Addl.
  4. Dodaj przycisk do ekranu EkranDodatkowy i ustaw dla jego właściwości OnSelect następującą funkcję:Add a button to AddlScreen, and set its OnSelect property to this function:
    Navigate(EkranDomyślny, ScreenTransition.Fade)Navigate(DefaultScreen, ScreenTransition.Fade)
  5. Na ekranie EkranDodatkowy naciśnij klawisz F5, a następnie wybierz przycisk.From the AddlScreen, press F5, and then select the button.
    Zostanie wyświetlony ekran EkranDomyślny.DefaultScreen appears.

Inny przykładAnother example