This article is currently in the process of being translated into Croatian (~99% done).
Introduction to WPF panels
Paneli su jedna od najvažnijih vrsta kontrola u WPF-u. Ponašaju se poput spremnika za druge kontrole i upravljaju rasporedom vaših prozora/stranica. S obzirom da prozor može sadržavati samo JEDNU podređenu (child) kontrolu, panel se često koristi za podjelu prostora na područja, pri čemu svako područje može sadržavati neku kontrolu ili drugi panel (koji je također kontrola, naravno).
Paneli dolaze u nekoliko različitih varijanti, pri čemu svaka od njih ima vlastiti način upravljanja rasporedom i podređenim (child) kontrolama. Odabir pravog panela je stoga ključan kako bi se postiglo ponašanje i raspored koje želite i ovo, posebno na početku vaše WPF karijere, može biti težak zadatak. U sljedećem odjeljku će biti ukratko opisan svaki od panela kako biste dobili ideju kojeg kada koristiti. Nakon toga, prijeđite na sljedeća poglavlja u kojima će svaki od panela biti detaljno opisan.
Canvas
Jednostavan panel koji oponaša način rada WinFormsa. Omogućuje vam dodjeljivanje specifičnih koordinata svakoj od podređenih kontrola, dajući vam potpunu kontrolu nad rasporedom. Ovo, međutim, nije vrlo fleksibilno jer morate ručno premještati podređene kontrole i osigurati se da su poravnane onako kako želite. Koristite ga (isključivo) kada želite potpunu kontrolu nad pozicijama podređenih kontrola.
WrapPanel
WrapPanel će pozicionirati svaku od podređenih kontrola jednu do druge, vodoravno (podrazumijevani način) ili okomito, sve dok se ne popuni sav prostor nakon čega će preći u novi red i nastaviti. Koristite ga kada želite vodoravnu ili okomitu listu kontrola koja se automatski prelama kada nema više prostora.
StackPanel
StackPanel radi na sličan način kao WrapPanel, ali umjesto prelamanja ako podređene kontrole zauzimaju previše prostora, on se jednostavno proširi, ako je moguće. Baš kao i kod WrapPanela, orijentacija može biti vodoravna ili okomita, ali umjesto prilagođavanja širine ili visine podređenih kontrola prema najvećem elementu, svaki se element rasteže da zauzme cijelu širinu ili visinu. Koristite StackPanel kada želite listu kontrola koji zauzima sav raspoloživi prostor, bez prelamanja
DockPanel
DockPanel vam omogućuje usidravanje podređenih kontrola na vrh, dno, lijevo ili desno. Podrazumijevani način rada je da posljednja kontrola, ako joj nije dodijeljena specifična pozicija usidravanja, ispuni preostali prostor. Isto možete postići s Grid panelom, ali za jednostavnije situacije DockPanel je jednostavniji za korištenje. Koristite DockPanel kada god trebate usidriti jednu ili nekoliko kontrola na jednu od strana, kao što je u podjela prozora na specifična područja.
Grid
Grid je vjerojatno najkompleksniji tip panela. Grid može sadržavati više redaka i kolona. Definirate visinu za svaki redak i širinu za svaku kolonu ili kao apsolutni iznos u pikselima ili kao postotak slobodnog prostora ili kao auto gdje će redak ili kolona automatski prilagoditi veličinu ovisno o sadržaju. Koristite Grid kada drugi paneli nisu dovoljno dobri za postići ono što želite, primjerice kada ima potrebu za više kolona i često u kombinaciji s drugim panelima.
UniformGrid
UniformGrid je poput Grida, omogućava više redaka i stupaca, ali uz jednu veliku važnu razliku: svi reci i kolone će biti iste veličine! Koristite ga kada vam je potrebno ponašanje Grida bez potrebe za specificiranjem različitih veličina za retke i stupce.