WPF, DockPanel

DockPanel предоставя по-интересна опция за оформление. Този панел разтяга контролите по една от външните граници. Най-лесният начин да си представите това е да си представите лентата с инструменти, която присъства в горната част на много приложения на Windows. Тези ленти с инструменти се закачат в горната част на прозореца. Както при StackPanel, закачените елементи трябва да избират един аспект от оформлението.

Например, ако искате да закачите бутон към горната част на DockPanel, той ще се разтегне до пълната ширина на DockPanel, но ще получи необходимата височина (въз основа на съдържанието и свойството MinHeight). От друга страна, ако бутонът е закачен към лявата страна на контейнера, височината му ще бъде разтегната, за да запълни контейнера, но ширината ще бъде зададена според нуждите.

Възниква естествен въпрос: как дъщерните елементи избират страна за докинг? Отговор: чрез прикачено свойство с имеDock, което може да бъде зададено на Left, Right, Top или Bottom. Всеки елемент, поставен вътре в DockPanel, автоматично получава това свойство.

страна

Ясно е, че редът е важен при докинг на контролите по този начин. В този пример горният и долният бутон получават пълната ширина на DockPanel, защото те са закачени първи. Когато след това левият и десният бутон се съединят, те се поставят между първите два. Ако направите обратното, тогава левият и десният бутон ще получат цялата височина на страните на панела, а горната и долната ще станат по-тесни, защото трябва да бъдат поставени между страничните бутони.

Можете да закачите няколко елемента от една и съща страна. В този случай елементите просто се подреждат по тази страна в реда, в който са декларирани в маркирането. И ако не ви харесва поведението впо отношение на разтягане и междинни пространства, можете да регулирате свойствата Margin, HorizontalAlignment и VerticalAlignment, както направихте със StackPanel.