반응형
C# Winform에서 TableLayoutPanel로 Runtime시 동적으로 행을 숨기고 보이게 하는 방법
- 숨김 처리될 행의 SizeType을 Absolute으로 설정
- 숨김 처리될 행 아래에 행이 있다면 그 행을 SizeType을 Percent로 설정
- 숨김 처리될 행의 Height를 0으로 설정
- 숨김 처리될 행만큼 TableLayoutPanel의 Height 조절
[빨간박스는 숨겨질 행]
Hide Button Source Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 |
private void btnHideShow_Click(object sender, EventArgs e)
{
int hideRow = tableLayoutPanel1.GetRow(panel2);
const int hidePanelHeight = 100;
if (tableLayoutPanel1.RowStyles[hideRow].Height > 0)
{
tableLayoutPanel1.RowStyles[hideRow].Height = 0; // 숨김처리
tableLayoutPanel1.Height -= hidePanelHeight; // Table의 Height를 숨겨진 Panel Height만큼 줄여준다
}
else
{
tableLayoutPanel1.RowStyles[hideRow].Height = hidePanelHeight; // 원래상태로 돌린다.
tableLayoutPanel1.Height -= hidePanelHeight; // Table의 Height를 원래상태로 돌려준다.
}
(sender as Button).Text = (sender as Button).Text == "Hide" ? "Show" : "Hide";
} |
cs |
소스파일 : TableLayoutPanel.D20190109.zip
반응형
'프로그래밍 > C#' 카테고리의 다른 글
[C#] SQLite Table 존재유무 체크 하고 생성하기 (0) | 2019.10.14 |
---|---|
[C#] Excel Error 0x800ac472 원인 (0) | 2019.06.21 |
[C#] SQLite 맛보기 - DB파일 생성 (0) | 2019.04.05 |
[C#] 문자열 검색 함수 (String.Contains) (0) | 2019.01.21 |
[C#] LINQ Aggregate Function (0) | 2019.01.11 |