XAML Layout in Depth
This course will teach you to build professional user interfaces in XAML-based applications, understand the layout process, and learn about layout-properties, panels, transformations, projections, and advanced topics to create exciting layouts.
What you'll learn
This course is about layout in XAML-based applications. It focuses on all XAML platforms like WPF, WinRT and Silverlight. In this course, you'll learn how the layout process works, and how to build custom panels. You'll see how the different layout properties of elements like Width, Height, Alignments and Margin behave and when they have an effect and when they do not. After those basics, this course focuses on the different Panels available in XAML. You'll learn about the common Panels Grid, StackPanel and Canvas, but also about the VirtualizingStackPanel that is used by some ItemsControl for UI-Virtualization. This course also shows you how to use the WPF-specific Panels WrapPanel and DockPanel and the WinRT-specific Panel VariableSizedWrapGrid. After the Panels, we look at Transformations to rotate, scale, skew and translate (move) your elements. You'll also learn how to work with Projections to give your elements a 3D-like effect. With the knowledge about the layout process, about the properties of elements, about Panels, and about Transformations and Projections in the backpack, we look at advanced topics. You'll learn about the shared size groups supported by the Grid in the WPF, how to change the Panel of an ItemsControl, how to animate a position change of the elements in a Panel, and many other interesting things. Throughout this course, your knowledge is applied to an MVVM-based WPF-application called FriendViewer. The course teaches you how to build the complete layout of that FriendViewer application, including a pinnable navigation, a loading-overlay, a UserControl to display a friend, and a main area that re-positions elements dynamically with an animation.
Table of contents
- Introduction 2m
- Elements with Children 4m
- The Base Class: Panel 2m
- Panel-subclasses in WPF and WinRT 4m
- The Grid 9m
- The Grid: Using the Designer 4m
- FriendViewer: The FriendControl 10m
- FriendViewer: The Application Layout 6m
- The GridSplitter 3m
- The Canvas and ZIndex 7m
- The StackPanel 5m
- The WrapPanel (WPF Only) 3m
- The DockPanel (WPF Only) 4m
- The VariableSizedWrapGrid (WinRT Only) 6m
- Summary 4m
- Introduction 2m
- Transformations 1m
- Transformation Classes 3m
- LayoutTransform vs. RenderTransform 7m
- The Origin of a RenderTransform 2m
- Rotate, Scale, and Skew 2m
- FriendViewer: Scale of ListViewItems 7m
- Get the Position of an Element 2m
- Translate an Element 10m
- FriendViewer: Navigation Flyout 8m
- MatrixTransform 6m
- Combine Transformations 2m
- Projections 1m
- PlaneProjection 5m
- Matrix3DProjection 1m
- Summary 2m
- Introduction 2m
- The Grid as Overlay-container 2m
- FriendViewer: Loading-overlay 9m
- The Grid: Shared Size Groups (WPF only) 4m
- FriendViewer: Pinnable Navigation 10m
- Layout the Content of a Control 4m
- Change the Panel of an ItemsControl 8m
- When There's Not Enough Space 2m
- The ScrollViewer 5m
- The Viewbox 5m
- Animated Move of Elements in a Panel 5m
- FriendViewer: New Main Area 11m
- Summary 3m