2010-01-25 4 views
2

런타임에 TabPages가 추가되는 TabControl이 포함 된 간단한 양식이 있습니다. 이 모든 일을 거의 내가 그것을 자동으로 크기를 설정할 때,하지만 런타임 TabPages 계산을 무시합니다 ... 나는 자동 서식을 지연시킬 수있는 폼을 강제로 할 수 있습니다. TabPage가 추가되었거나 새 TabPage가 추가 될 때 양식이 강제로 다시 계산됩니까?런타임에 추가 된 C# TabPages는 부모 폼을 자동 크기 조정하지 않습니다.

EDIT : 저는 640x480 (MinimumSize 속성 사용)에서 내 앱을 시작하고 750 개의 컨트롤을 포함하여 테스트하고 있습니다.

+0

탭을 추가 한 후 자동 크기 조절 기능을 껐다가 다시 켜면 어떻게됩니까? – Jay

+0

아쉽게도 불행히도. – EvoGamer

답변

0

SuspendLayout()ResumeLayout()을 사용 하시겠습니까? 작동 방식을 설명하는 link입니다.

먼저 SuspendLayout()으로 전화하고 탭 페이지를 추가 한 다음 ResumeLayout()을 추가하십시오.

호프가 도움이 되었으면 안녕하세요, 탐.

+0

아쉽게도 자동 크기 조정 논리에 영향을 미치지 않는 것 같습니다 ... – EvoGamer

0

TabPage.Dock = DockStyle.Fill?

+0

TabPages에 Dock 속성이 없습니다. Dock에 대한 TabControl에 달렸습니다. – EvoGamer

0

나는이 문제가 더 이상 발생하지 않는다고 생각하지만 해결책을 찾는 다른 누구에게나 도움이 될 수 있습니다. 추가하는 가장 큰 TabPage의 MinimumSize가되도록 TabControl의 MinimumSize를 설정할 수 있습니다. TabPage에는 자신의 MinimumSize가 없으므로 MinimumSize를 확인할 수있는 TabPage에 하나의 완전히 도킹 된 컨트롤이 있어야합니다.

나는이 설정을 이미 FlowLayoutPanel을 사용하여 TabPage의 내용을 배치 했으므로 상대적으로 간단하고 확실하지 않을 수 있습니다. 나는 그것이 문제에 대한 정말 불쾌한 '해결책'이라는 것을 알고 있지만, TabControl을 강제적으로 제대로 업데이트 할 수있는 또 다른 방법을 찾지 못했습니다.