■ Frame 클래스의 BackStack 속성을 사용하는 방법을 보여준다.
※ BackStack 속성은 IList<PageStackEntry> 타입의 읽기 전용 속성이다.
※ 현재 페이지 이전에 방문한 페이지들의 스택을 나타낸다.
※ 새 페이지로 이동할 때마다 이전 페이지 정보가 BackStack에 추가된다.
※ 뒤로 가기를 수행하면 BackStack에서 가장 최근 항목이 제거된다.
※ 웹의 네비게이션 히스토리를 추적한다.
※ 사용자의 이전 페이지로의 이동을 가능하게 한다.
※ PageStackEntry 객체는 페이지 타입과 파라미터 정보를 포함한다.
※ Frame.GoBack 메소드 : BackStack의 최상위 항목으로 이동한다.
※ Frame.CanGoBack 속성 : BackStack에 항목이 있는지 확인한다.
▶ 예제 코드 (C#)
1 2 3 4 5 6 7 8 9 10 11 |
using Microsoft.UI.Xaml.Controls; // ... Frame frame; // ... this.frame.BackStack.Clear(); // 네비게이션 히스토리를 모두 지운다. |
▶ 예제 코드 (C#)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
using System.Linq; using Microsoft.UI.Xaml.Controls; using Microsoft.UI.Xaml.Navigation; // ... Frame frame; // ... if(this.frame.BackStack.Count > 0) // 네비게이션 히스토리가 있다면 { PageStackEntry pageStackEntry = this.frame.BackStack.Last(); // 네비게이션 히스토리의 가장 최근 항목을 찾는다. // 작업을 처리한다. } |
▶ 예제 코드 (C#)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
using System.Linq; using Microsoft.UI.Xaml.Controls; using Microsoft.UI.Xaml.Navigation; // ... Frame frame; // ... PageStackEntry pageStackEntry = this.frame.BackStack.LastOrDefault(); // 네비게이션 히스토리에서 가장 최근 항목이 있다면 if(pageStackEntry != null) { // 작업을 처리한다. } |
▶ 예제 코드 (C#)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
using System.Linq; using Microsoft.UI.Xaml.Controls; using Microsoft.UI.Xaml.Navigation; // ... Frame frame; // ... if(this.frame.BackStack.Any()) // 네비게이션 히스토리가 있다면 { PageStackEntry pageStackEntry = this.frame.BackStack.Last(); // 작업을 처리한다. } |