페이지(page)란 창을 새롭게 띄우는게 아니라 기존 윈도우안에서 내용물만 바꾸는거라고 볼 수 있습니다.
아래처럼 버튼을 누르면 페이지가 바뀌는 효과를 보실 수 있죠? 이런게 페이지가 변경 되는 모습입니다.
지금부터 차근 차근 페이지를 만드는 방법에 대해서 알아볼게요!
1. 페이지 생성
우리 포스팅에서는 페이지를 2개 만들어보겠습니다.
같은 방식으로 Page2.xaml도 만들어 아래와 같이 두개의 파일을 생성합니다.
2. 페이지 내용 수정
1) Page 파일의 code-behind단은 기본 디폴트 상태로 둡니다.
2) 각각의 페이지에 xaml 단을 수정해줍니다.
//Page1.xaml
//Page2.xaml
3. 메인 window 수정
//MainWindow.xaml
1) 기본 레이아웃
각 페이지에 접속할 버튼 2개와 버튼에 붙힐 클릭 이벤트를 추가합니다.
2) 메인window에서 페이지 띄울 위치 정하기
빨간색 사각형 부분에 페이지가 위치하도록 하고 싶습니다.
이때 우리는 Frame이라는 낯선 엘리먼트를 사용하게 되는데요.
이 엘리먼트를 통해서 페이지가 출력되는 것입니다.
해당 엘리먼트의 위치는 버튼 아래 쪽에 위치할 것임으로 아래와 같이 작성해주고,
code-behind단에서 해당 Frame에 접근하기 위한 x:Name도 추가해줍니다.
//MainWindow.xaml.cs
Frame이름.Content 프러퍼티에 우리가 앞서 정의했던 페이지들을 연결 시켜주는데요.
이때 각 페이지의 클래스를 객체화한것을 .Content에 할당했다는것을 집중하시기 바랍니다!
4. 추가적인 UI 수정
여기까지 코드를 작성하고 앱을 실행시켜보면, 아래와 같이 뒤로가기 버튼이 있는 지저분한 UI가 만들어집니다.
이를 없애주기 위해서는
//MainWindow.xaml
NavigationUIVisibility=”Hidden”을 추가하여 해당 부분을 뜨지 않게 해주어야 합니다.
이 글과 읽으면 좋은글
'c# > wpf' 카테고리의 다른 글
[c# wpf] 새로운 창(윈도우) 여는 법 (0) | 2022.05.24 |
---|---|
[c# wpf] 탭(Tab Control) 사용법 (0) | 2022.05.24 |
[c# wpf] 버튼 클릭 => 텍스트 출력 2가지 방법 (0) | 2022.05.23 |
[c# wpf] 버튼 content에 중괄호(curly braces) 넣기 (0) | 2022.05.23 |
[wpf 기초] App.xaml 기본 구조 이해 (0) | 2022.05.11 |
댓글