XAML in a Nutshell

Book description

When Microsoft releases Windows Vista, the new operating system will support applications that employ graphics now used by computer games--clear, stunning, and active. The cornerstone for building these new user interfaces is XAML ("Zammel"), the XML-based markup language that works with Windows Presentation Foundation (WPF), Vista's new graphics subsystem.

An acronym for Extensible Application Markup Language, XAML offers a wealth of new controls and elements with exciting capabilities, including animation and rendering of 3D graphics. Windows developers are already jazzed by the possibilities of using XAML for fixed and flow format documents like PDF and HTML, 2D and 3D vector-based graphics, form development, animation, audio and video, transparent layering, and a lot more. Many feel that XAML will eliminate the need for multiple file formats or plug-ins (read: Flash), while lowering development costs and reducing time to market.

The problem is, most developers don't know XAML. While it is fairly easy to understand, you still need a quick guide to bring you up to speed before Vista's release, and that's where this book's simple, no nonsense approach comes in.

XAML in a Nutshell covers everything necessary to design user interfaces and .NET applications that take advantage of WPF. Prerequisites such as Microsoft's new unified build system, MSBuild, and core XAML constructs and syntax--including shortcuts--are all presented with plenty of examples to get you started. The Core XAML Reference section lets you dig even deeper into syntax rules and attributes for all XAML elements with a series of quick-reference chapters. This section divides XAML elements into logical categories of elements, controls, shapes and geometry, layout, animations, and transformations for easy reference.

XAML in a Nutshell helps you learn, firsthand, how to use this XML-based markup language to implement the new generation of user interface graphics. As one reviewer noted, "Strong code examples and an efficient, conversational style take the tedium out of learning XAML and make the subject understandable--even interesting."

Table of contents

  1. Table of Contents
  2. Preface
    1. Who Should Read This Book
    2. What This Book Covers
    3. Organization
      1. Part I, Introducing XAML
      2. Part II, XAML Concepts
      3. Part III, Core XAML Reference
      4. Part IV, Appendixes
    4. Conventions Used in This Book
    5. Using Code Examples
    6. Comments and Questions
    7. Safari® Enabled
    8. Acknowledgments
  3. I
  4. Introducing XAML
    1. The Benefits of XAML
    2. What XAML Is Not
    3. XAML Development Resources
  5. Getting Started with XAML
    1. XAML Prerequisites
    2. Defining XAML Applications
    3. Building XAML Applications
    4. XAML Applications and Visual Studio (1/2)
    5. XAML Applications and Visual Studio (2/2)
  6. II
  7. The Basics of XAML
    1. Core XAML Syntax
    2. Elements
      1. Root Elements
      2. Control Elements
      3. Panel Elements
      4. Shape and Geometric Elements
      5. Document Elements
    3. Attributes
    4. Attached Properties
    5. Binding Properties
    6. codebehind
  8. Layout and Positioning
    1. StackPanel and DockPanel
    2. Using Width and Alignment
    3. Margins and Padding
    4. Grid
    5. Absolute Positioning (1/2)
    6. Absolute Positioning (2/2)
  9. Resources
    1. Using Resources
    2. Using Styles
    3. Triggers
  10. Storyboards and Animations
    1. Storyboards
    2. Controlling Animations (1/2)
    3. Controlling Animations (2/2)
    4. Animation Using Key Frames
  11. III
  12. Elements
    1. Bold
    2. Brush
    3. Color
    4. Figure
    5. Floater
    6. Frame
    7. GradientStop
    8. Image
    9. ImageBrush
    10. Inline
    11. Italic
    12. Label
    13. LinearGradientBrush
    14. LineBreak
    15. List
    16. ListItem
    17. Paragraph
    18. Pen
    19. RadialGradientBrush
    20. Section
    21. SolidColorBrush
    22. TextBlock
    23. TextDecoration
    24. TextDecorationCollection
    25. TextEffect
    26. Thickness
    27. Underline
  13. Controls
    1. Base Control Reference
      1. UIElement
      2. FrameworkElement
      3. Control
      4. ContentControl
      5. HeaderedItemsControl
      6. HeaderedContentControl
      7. ItemsControl
    2. Common Event Reference
    3. Core Control Reference
      1. Button
      2. CheckBox
      3. ComboBox
      4. ContextMenu
      5. DocumentViewer
      6. Expander
      7. Hyperlink
      8. ListBox
      9. MediaElement
      10. Menu
      11. MenuItem
      12. NavigationWindow
      13. Page
      14. PasswordBox
      15. Popup
      16. RadioButton
      17. RadioButtonList
      18. RepeatButton
      19. ScrollViewer
      20. Slider
      21. TabControl
      22. TabItem
      23. TextBox
      24. ToolBar
      25. ToolBarOverflowPanel
      26. ToolBarPanel
      27. ToolBarTray
      28. ToolTip
      29. Window
  14. Shapes and Geometry
    1. ArcSegment
    2. BezierSegment
    3. CloseSegment
    4. CombinedGeometry
    5. DrawingBrush
    6. DrawingGroup
    7. Ellipse
    8. EllipseGeometry
    9. GeometryDrawing
    10. GeometryGroup
    11. ImageDrawing
    12. Line
    13. LineGeometry
    14. LineSegment
    15. Path
    16. PathFigure
    17. PathFigureCollection
    18. PathGeometry
    19. PathSegmentCollection
    20. Point
    21. Point3D
    22. PointCollection
    23. PolyBezierSegment
    24. Polygon
    25. Polyline
    26. PolyLineSegment
    27. PolyQuadraticBezierSegment
    28. QuadraticBezierSegment
    29. Rect
    30. Rect3D
    31. Rectangle
    32. RectangleGeometry
    33. StartSegment
  15. Layout
    1. Border
    2. Canvas
    3. ColumnDefinition
    4. DashStyle
    5. DockPanel
    6. FixedDocument
    7. FlowDocument
    8. Grid
    9. PageContent
    10. Panel
    11. RowDefinition
    12. Setter
    13. StackPanel
    14. Style
    15. Table
    16. TableCell
    17. TableColumn
    18. TableRow
    19. Trigger
  16. Animations and Transformations
    1. AnimationTimeline
    2. BooleanKeyFrame
    3. CharKeyFrame
    4. ColorAnimation
    5. ColorKeyFrame
    6. DecimalAnimation
    7. DecimalKeyFrame
    8. DoubleAnimation
    9. DoubleAnimationUsingPath
    10. DoubleKeyFrame
    11. Int16KeyFrame
    12. Int32KeyFrame
    13. Int64KeyFrame
    14. KeySpline
    15. Matrix
    16. MatrixAnimationUsingPath
    17. MatrixKeyFrame
    18. MediaTimeline
    19. ParallelTimeline
    20. PointAnimationUsingPath
    21. Point3DKeyFrame
    22. PointKeyFrame
    23. RectAnimation
    24. Rect3DKeyFrame
    25. RectKeyFrame
    26. RotateTransform
    27. Rotation3D
    28. Rotation3DKeyFrame
    29. ScaleTransform
    30. SetterTimeline
    31. SkewTransform
    32. SizeAnimation
    33. Size3D
    34. Size3DKeyFrame
    35. SizeKeyFrame
    36. StringKeyFrame
    37. ThicknessKeyFrame
    38. Timeline
    39. TranslateTransform
    40. VectorAnimation
    41. VectorKeyFrame
    42. Vector3DKeyFrame
    43. Vector
    44. Vector3D
  17. Events
    1. Routing Strategies
    2. Event Argument Reference
      1. RoutedEventArgs
      2. DependencyPropertyChangedEventArgs
      3. KeyEventArgs
      4. ScrollChangedEventArgs
      5. TextChangedEventArgs
      6. MouseEventArgs
      7. MouseButtonEventArgs
      8. SelectionChangedEventArgs
    3. Event Reference
      1. Click
      2. Closed
      3. DragEnter
      4. DragLeave
      5. DragOver
      6. Drop
      7. GotFocus
      8. IsCheckedChanged
      9. IsEnabledChanged
      10. IsFocusChanged
      11. IsMouseDirectlyOverChanged
      12. IsVisibleChanged
      13. KeyDown
      14. KeyUp
      15. LayoutUpdated
      16. LostFocus
      17. MouseEnter
      18. MouseLeave
      19. MouseMove
      20. MouseLeftButtonDown
      21. MouseLeftButtonUp
      22. MouseRightButtonDown
      23. MouseRightButtonUp
      24. Opened
      25. SelectionChanged
      26. ScrollChanged
      27. TextChanged
  18. IV
  19. System.Windows.Controls
  20. System.Windows.Documents
  21. System.Windows.Shapes
  22. System.Windows
  23. System.Windows.Media
  24. System.Windows.Input. ApplicationCommands
  25. Predefined Colors
  26. XAML Interface in Code
  27. Index (1/3)
  28. Index (2/3)
  29. Index (3/3)

Product information

  • Title: XAML in a Nutshell
  • Author(s): Lori A. MacVittie
  • Release date: March 2006
  • Publisher(s): O'Reilly Media, Inc.
  • ISBN: 9780596526733