[C#] 폼에서 패널컨트롤(Panel)이용해서 멀티 페이지 구현하기 |
환경: Visual Studio 2012 |
폼에 다중 페이지 구현을 위해서 Panel 을 추가 합니다. 각 페이지 마다 버튼을 달아 페이지를 이동할 수 있도록 구현하였습니다. 폼 안에 단계별 옵션을 진행하고자 할 때 유용하겠죠.
▼ 먼저 첫 페이지에 표현할 컨트롤들을 올린 후 다음 페이지로 이동할 수 있는 다음 버튼을 하나 추가합니다. 첫 페이지는 폼이 되는 것이죠.
▼ 첫 페이지에 버튼을 추가하였다면 미리 클릭 이벤트 함수를 뽑아 놓습니다. 폼에 패널을 올리면 안보이기 때문입니다. 다음 버튼에는 패널을 보이게 하는 소스가 들어가겠죠.
▼ 두 번째 페이지를 구현하기 위해 폼에 패널 컨트롤을 올립니다. 세 번째 페이지도 두 번째 패널 위에 패널을 올려 구현하시면 됩니다.
▼ 폼에 패널을 올렸으면 Dock 옵션으로 가서 폼의 크기에 맞춥니다. 그래야 폼에 있는 컨트롤들이 안보여서 페이지 전환이 된 것처럼 보이겠죠.
▼ 패널을 폼 크기에 맞게 확장시킨 후 Visible 속성으로 가서 False 로 바꿉니다. 처음 프로그램을 띄울 때 폼 페이지가 제일 먼저 보여야 되기 때문이죠. 이렇게 False 로 바꿔 놓고 다음 버튼을 누르면 소스에서 True 로 변경할 것입니다.
▼ 두 번째 페이지에 해당하는 패널에 패널 컨드롤을 하나 더 추가하고 Dock 옵션에서 폼과 Docking 시킨 후 컨트롤들을 올립니다. 그렇게 해서 세 번째 페이지까지 만들었습니다.
▼ 이제 버튼 구현만 남았네요. 아래 그림과 소스를 보시면 패널 컨트롤의 Visible 속성값을 True 와 False 바꾼 것 밖에는 없습니다. 세 번째 페이지에서 다음 버튼은 첫 번째 페이지로 돌아가는 것으로 두 개의 패널을 안보이게 만들었습니다.
namespace MultiPageSample { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void btnPage1Next_Click(object sender, EventArgs e) { panel1.Visible = true; } private void btnPage2Prev_Click(object sender, EventArgs e) { panel1.Visible = false; } private void btnPage2Next_Click(object sender, EventArgs e) { panel2.Visible = true; } private void btnPage3Prev_Click(object sender, EventArgs e) { panel2.Visible = false; } private void btnPage3Next_Click(object sender, EventArgs e) { panel1.Visible = false; panel2.Visible = false; } } }
'기타 언어 > C# & MFC' 카테고리의 다른 글
C 언어 무료 컴파일 도구 Dev C++ 디버깅 하는 방법 (0) | 2022.09.08 |
---|---|
시샵 C# XmlDocument 클래스 사용해서 XML 파싱하는 방법 (0) | 2022.08.13 |
시샵(C#) 프로젝트 기본 시작 Form 설정하기 (0) | 2022.07.09 |
[C#] 리스트컨트롤(ListView)에 드래그앤 드랍으로 파일 추가하기 (3) | 2020.01.21 |
[C#] SQLite 데이터베이스 접속과 데이터 가져와서 표현하는 방법 (2) | 2020.01.09 |
[C#] ListView 컨트롤에서 행 선택 시 열 전체가 선택된 것처럼 보이게 하는 방법 (3) | 2020.01.02 |
프로그램 개발을 위한 무료 비주얼 스튜디오 2015 설치하기 (0) | 2019.06.19 |
시샵 C# ListView 마지막에 추가한 데이터에 스크롤 위치시키는 방법 (0) | 2019.06.10 |