프로그래밍/C,C++,C#

[C# .Net] FlowLayoutPanel Dock Fill 사라짐 해결

Beginner:) 2022. 7. 12.
320x100

FlowLayoutPanel, TableLayoutPanel 등은 Dock이 적용되는 방식이 좀 다르다.

 

그래서 일반적으로 생각하는 Dock으로 아무리 설정하더라도 Controller가 사라지거나, 사이즈가 최솟값이 되거나 하는 오류가 나타날 수 있다.

 

아래는 Form아래에 FlowLayoutPanel을 Dock - Fill로 설정하여 채웠다.

 

그 안에 Button 하나를 위치한뒤 Button의 Dock의 값을 Fill로 바꿔본다.

 

 

그 상태 그대로 Button을 하나 추가해본다.

 

 

Dock의 값을 Fill로 지정했던 버튼이 다시 생겨났다. 

 

이것은 말했다싶이 FlowLayoutPanel의 Dock적용방법이 조금 다르다.

 

일반적인 부모 컴포넌트를 Docking 하는 것과 달리 Dock을 설정한 컴포넌트들은 Dock이 None인 컴포넌트를 기준으로 Docking 한다. 

 

즉 Fill을 적용한 Button1은 None인 Button2를 기준으로 Fill이 되어 같은 크기가 된다.

 

아래는 다른 예제들이다.

 

 

참조)

https://docs.microsoft.com/ko-kr/dotnet/desktop/winforms/controls/how-to-anchor-and-dock-child-controls-in-a-flowlayoutpanel-control?view=netframeworkdesktop-4.8

 

반응형

댓글