wpf dockpanel 예제

이미 언급했듯이 기본 동작은 DockPanel의 마지막 자식이 나머지 공간을 차지하지만 LastChildFill을 사용하여 비활성화할 수 있다는 것입니다. 다음은 비활성화하는 예제이며, 동시에 두 개 이상의 컨트롤을 같은 쪽에 도킹하는 기능을 보여 드리겠습니다. 예를 들어 왼쪽 단추의 일부가 되기 때문에 맨 위 버튼은 맨 위 공간을 모두 얻지 못합니다. DockPanel은 태그에서 자신의 위치를 보고 선호하는 컨트롤을 결정합니다. 이 경우 왼쪽 단추는 태그에 먼저 배치되므로 우선 순위가 됩니다. 다행히도, 이것은 또한 변경 하는 매우 쉽게 의미, 우리가 다음 예제에서 볼 수 있듯이, 어디 우리는 또한 자식 컨트롤에 너비/높이 할당 하 여 공간을 조금 밖으로 고르게: 어떤 단추를 클릭, 그것은 또한 메시지를 표시 됩니다. 예를 들어 가운데에 있는 단추를 클릭하면 다음 메시지가 표시됩니다. DockPanel에 항목을 추가하는 순서가 중요합니다. 각 자식 컨트롤은 나중에 정의된 컨트롤에서 사용할 수 없게 되는 사용 가능한 공간 중 일부를 차지합니다. 예를 들어 DockPanel의 맨 위에 도킹된 도구 모음은 도구 모음이 수평 공간을 채우기 위해 늘어나지 않더라도 패널 높이의 일부를 차지합니다. 왼쪽에 도킹된 이후 컨트롤은 높이로 확장되어 도구 모음과 패널 베이스 사이의 영역을 채웁니다.

DockPanel의 전체 높이를 채우지 않습니다. 이 두 자식 컨트롤의 순서를 전환하면 다른 레이아웃이 됩니다. 첫 번째 샘플은 가능한 모든 도킹 위치를 보여 주어 도킹위치를 보여 주었다. 물론 사용 가능한 모든 옵션을 사용할 필요는 없습니다. 또한 동일한 도크 옵션을 두 번 이상 사용하여 다음 예제에서 볼 수 있듯이 컨트롤이 서로 나란히 쌓이도록 할 수도 있습니다. DockPanel에 대한 XAML을 다음과 같이 수정합니다. 비주얼 스튜디오에서 새 WPF 응용 프로그램 프로젝트를 만들고 프로젝트 이름을 “DockPanelDemo”로 지정합니다. 이전과 같이 자동으로 추가된 창의 XAML을 수정합니다. 이 예제에서는 왼쪽에 두 개의 컨트롤을 도킹하고 두 개의 컨트롤을 오른쪽에 도킹하고 동시에 LastChildFill 속성을 끕니다.

Comments

Comments are closed.