내 Winforms 앱이 GUI 상태를 데이터베이스에 저장하고 복원합니다. Split Container의 SplitterDistance를 제외한 모든 것이 정상적으로 작동합니다.Split Container Splitter 사용자 개입없이 변경됨
값이 올바르게로드되고 DB에서 설정되지만 스플리터를 건드리지 않고 을 종료하면 동일한 값을 저장하려고합니다. 하지만 초기 값에서 25 픽셀을 뺀 값을 저장합니다. 여러 번 앱을 열고 닫으면 스플리터 거리가 매번 25 픽셀 씩 줄어 듭니다.
이것은 사용자 지정 컨트롤이 아니며 일반적으로 오래된 .NET SplitContainer입니다. 컨트롤은 프로그래밍 방식으로 액세스되어 초기 SplitterDistance를로드하고 종료시 저장합니다.
어떻게 해결할 수 있습니까?
업데이트 : spl의 FixedPanel
속성은 원래 None
으로 설정되었습니다. 이것을 Panel1
및 Panel2
으로 설정하려고했습니다. 두 경우 모두 SplitterDistance 은 저장하면이 50 픽셀 증가합니다.
내 업데이트를 참조하십시오. 분할 된 전체 컨테이너의 크기를 조정할 수 있습니까? –
resize 이벤트에 처리기를 추가하고 컨테이너의 크기를 조정하는 중입니다. 그래서 이제는 .NET에서 모든 작업의 크기를 조정했으면 DB에서 SplitterDistance를 설정해야한다고 생각합니다 (언제?). –
스플 리터 컨테이너의 너비가 같고 화면에로드 할 때 창 크기는 무엇입니까? – Turbot