30
Serwis znalezionych hasełOdnośniki
- Smutek to uczucie, jak gdyby się tonęło, jak gdyby grzebano cię w ziemi.
- Katalog domowy użytkownika root to /root...
- — Jaki wykres? — zdziwił się Igor Pietrowicz...
- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxc
- PODSTAWOWE CECHY NEOSCHOLASTYKI...
- zajdel a...
- 234AKSJOLOGIA ETYCZNA CZYLI NAUKA...
- – Co masz na myśli?– Myślę o Kamili...
- 371 Antoni Ignacy, s...
- cyjnej w początkowym okresie transformacji oraz braku odpowiedniego dostosowania po stronie polityki budżetowej...
- o mnie ex re mojego stanowiska w sprawie reformy rolnej, że jestem jakzłodziej, co chce wyjąć z cudzej kieszeni zegarek i dać go komuś innemu...
Smutek to uczucie, jak gdyby się tonęło, jak gdyby grzebano cię w ziemi.
Fill>
31
32
Rozdział 4. ♦ Kontenery i pozycjonowanie
95
Rysunek 4.3.
Demonstracja
działania
podstawowych
wartości własności
pozycjonujących
Własność HorizontalAlignment posiada wartości:
Left — wyrównanie do lewej strony,
Center — wycentrowanie w poziomie,
Right — wyrównanie do prawej strony,
Stretch — wyrównanie w pionie.
Analogicznie, VerticalAlignment przyjmuje wartości:
Top — wyrównanie do góry,
Middle — wyśrodkowanie w pionie,
Bottom — wyrównanie do dołu,
Stretch — wyrównanie w poziomie.
W kodzie programu z listingu 4.2 nie użyliśmy jednej z wartości, która jest wspólna dla obu własności (zarówno HorizontalAlignment, jak i VerticalAlignment). Mowa tutaj o wartości Stretch.
Stretch jest wartością, która mówi, aby obiekt został rozciągnięty w danym kierunku.
Innymi słowy, przypisanie obiektowi własności HorizontalAlignment=”Stretch” sprawi, że zabierze on całe dostępne miejsce w poziomie. Listing 4.3 pokazuje wykorzystanie wartości Stretch (rysunek 4.4 przedstawia zrzut ekranu aplikacji).
Listing 4.3. Wykorzystanie własności Stretch
1
5
96
Silverlight. Od podstaw
Listing 4.3. Wykorzystanie własności Stretch — ciąg dalszy 6
9
10
11
13
14
17
18
19
Rysunek 4.4.
Działanie wartości
Stretch
Proszę zwrócić uwagę na to, że w linijce 11. listingu 4.3 elipsa nie ma nadanej ani własno-
ści HorizontalAlignment, ani VerticalAlignment, a pomimo tego zostanie ona rozcią-
gnięta (jak widać na rysunku 4.4). Dzieje się tak dlatego, że wartość Stretch jest domyślną wartością zarówno dla HorizontalAlignment, jak i VerticalAlignment.
Własności Width i Height obiektów typu FrameworkElement mają wyższy priorytet niż wartość Stretch własności pozycjonujących. W przypadku gdy określimy wielkość obiektu w pionie lub poziomie, wartość Stretch nie ma znaczenia. Tak też jest w przypadku przycisku z listingu 4.3 (linijka 19. i 20.). Ma on określoną wysokość, dlatego zajmuje całe miejsce w poziomie.
Rozdział 4. ♦ Kontenery i pozycjonowanie
97
StackPanel
StackPanel, czyli inaczej panel stosu, to najprostszy z kontenerów dostępnych w Silverlighcie. Elementy znajdujące się w jego wnętrzu są rozmieszczane wzdłuż jednej z prostych (albo pionowej, albo poziomej), którą nazywa się orientacją.
Elementy znajdujące się wewnątrz panelu stosu są wyświetlane w określonej kolejności.
W przypadku orientacji poziomej elementy są wyświetlane od strony lewej do prawej. Gdy StackPanel ma orientację pionową, wtedy wyświetlane są od góry do dołu.
Określenie orientacji panelu
Własność Orientation określa orientację panelu stosu i może przyjmować dwie wartości:
Vertical (domyślnie) — orientacja pionowa („jeden element pod drugim”),
Horizontal — orientacja pozioma („jeden element obok drugiego”).
W solucji /Rozdzial4.sln w pliku /StackPanelOrientation.xaml można znaleźć kod przykładowej aplikacji. Listing 4.4 pokazuje fragment kodu tego programu, w którym widać działanie panelu stosu z wykorzystaniem własności Orientation. Rysunek 4.5 przedstawia zrzut ekranu aplikacji.
Listing 4.4. Użycie własności Orientation panelu stosu
1
3
7
8
11
Jak można zobaczyć na listingu 4.4, w przykładowej aplikacji mamy trzy panele stosu:
Panel nadrzędny o nazwie LayoutRoot — przechowuje inne dwa panele stosu.
Pozycjonuje je wzdłuż pionowej linii („jeden pod drugim”). Nie ma potrzeby definiowania własności Orientation (jej domyślna wartość to Vertical).
Panel stosu z trzema poziomymi kwadratami — ma określoną przez programistę wartość Orientation=„Horizontal”.
Panel stosu z dwoma kwadratami. W tym panelu również nie określa się parametru Orientation ze względu na wartość domyślną.
98
Silverlight. Od podstaw
Rysunek 4.5.
StackPanel — użycie
własności Orientation
W gruncie rzeczy panele stosu są bardzo prostym narzędziem. Proszę jednak zwrócić uwagę na to, że w powyższym przykładzie użyliśmy trzech paneli stosu, zagnieżdżając dwa z nich w jednym nadrzędnym. Jak na tak prosty zabieg zaowocowało to ciekawym efektem. W dalszej części książki Czytelnik będzie miał okazję bardzo często spotykać się z podobnym użyciem paneli stosu, ich siła bowiem tkwi w tym, że można je łatwo (wręcz intuicyjnie) zagnieżdżać oraz łączyć z innymi kontenerami.
Grid
Siatka Grid jest najwszechstronniejszym kontenerem dostępnym w technologii Silverlight.
Bez niej projektowanie interfejsów byłoby o wiele bardziej uciążliwe. Aby z niej skorzy-stać, programista najpierw definiuje siatkę, określając liczbę wierszy i kolumn (a także ich rozmiary). Efekt końcowy przypomina trochę to, co można zobaczyć po otwarciu pustego arkusza kalkulacyjnego. Pozycjonowanie za pomocą siatki polega po prostu na wkładaniu elementów (kontrolek lub innych kontenerów) do jej komórek. W tym podrozdziale omówimy zarówno etap projektowania siatki i wkładania do niej elementów, jak i dodatkowe możliwości, takie jak choćby scalanie ze sobą komórek.
Definiowanie wierszy i kolumn
Definiowanie wierszy i kolumn siatki odbywa się poprzez nadanie jej odpowiednich wła-
ściwości. Definicja tych własności (mowa tutaj konkretnie o właściwościach Column