WPF 4 Unleashed

Author:   Adam Nathan
Publisher:   Pearson Education (US)
ISBN:  

9780672331190


Pages:   848
Publication Date:   24 June 2010
Format:   Paperback
Availability:   In Print   Availability explained
Limited stock is available. It will be ordered for you and shipped pending supplier's limited stock.

Our Price $158.37 Quantity:  
Add to Cart

Share |

WPF 4 Unleashed


Add your own review!

Overview

The #1 WPF Book--Now Updated for WPF 4!   Full Color: Code samples appear as they do in Visual Studio!   Thorough, authoritative coverage, practical examples, clear writing, and full-color presentation make this one of the most widely acclaimed programming books of the last decade.   Windows Presentation Foundation (WPF) is the recommended technology for creating Windows user interfaces, giving you the power to create richer and more compelling applications than you dreamed possible. Whether you want to develop traditional user interfaces or integrate 3D graphics, audio/video, animation, dynamic skinning, multi-touch, rich document support, speech recognition, or more, WPF enables you to do so in a seamless, resolution-independent manner. WPF 4 Unleashed is the authoritative book that covers it all, in a practical and approachable fashion, authored by WPF guru and Microsoft developer Adam Nathan.  Covers everything you need to know about Extensible Application Markup Language (XAML) Examines the WPF feature areas in incredible depth: controls, layout, resources, data binding, styling, graphics, animation, and more Highlights the latest features, such as multi-touch, text rendering improvements, XAML language enhancements, new controls, the Visual State Manager, easing functions, and much more Delves into topics that aren’t covered by most books: 3D, speech, audio/video, documents, effects Shows how to create popular UI elements, such as Galleries, ScreenTips, and more Demonstrates how to create sophisticated UI mechanisms, such as Visual Studio-like collapsible/dockable panes Explains how to create first-class custom controls for WPF Demonstrates how to create hybrid WPF software that leverages Windows Forms, DirectX, ActiveX, or other non-WPF technologies Explains how to exploit new Windows 7 features, such as Jump Lists and taskbar customizations

Full Product Details

Author:   Adam Nathan
Publisher:   Pearson Education (US)
Imprint:   Sams Publishing
Dimensions:   Width: 18.10cm , Height: 3.90cm , Length: 23.10cm
Weight:   1.554kg
ISBN:  

9780672331190


ISBN 10:   0672331195
Pages:   848
Publication Date:   24 June 2010
Audience:   Professional and scholarly ,  Professional & Vocational
Format:   Paperback
Publisher's Status:   Out of Print
Availability:   In Print   Availability explained
Limited stock is available. It will be ordered for you and shipped pending supplier's limited stock.

Table of Contents

Introduction     1 Who Should Read This Book?      2 Software Requirements     3 Code Examples     4 How This Book Is Organized     4 Part I: Background     4 Part II: Building a WPF Application     4 Part III: Controls     5 Part IV: Features for Professional Developers     5 Part V: Rich Media     5 Part VI: Advanced Topics     6 Conventions Used in This Book     6   Part I Background Chapter 1: Why WPF, and What About Silverlight?      9 A Look at the Past      10 Enter WPF     11 The Evolution of WPF     14 Enhancements in WPF 3.5 and WPF 3.5 SP1     15 Enhancements in WPF 4     16 What About Silverlight?      18 Summary     19   Chapter 2: XAML Demystified     21 XAML Defined     23 Elements and Attributes     24 Namespaces      26 Property Elements     29 Type Converters     30 Markup Extensions     32 Children of Object Elements .      35 The Content Property     35 Collection Items     36 More Type Conversion     38 Mixing XAML with Procedural Code     40 Loading and Parsing XAML at Runtime     40 Compiling XAML     43 Introducing XAML2009     48 Full Generics Support     49 Dictionary Keys of Any Type     50 Built-In System Data Types     50 Instantiating Objects with Non-Default Constructors     51 Getting Instances via Factory Methods     51 Event Handler Flexibility     52 Defining New Properties     53 Fun with XAML Readers and Writers     53 Overview     53 The Node Loop     56 Reading XAML     57 Writing to Live Objects      61 Writing to XML     63 XamlServices     64 XAML Keywords     67 Summary     70 Complaint 1: XML Is Too Verbose to Type     71 Complaint 2: XML-Based Systems Have Poor Performance     71   Chapter 3: WPF Fundamentals     73 A Tour of the Class Hierarchy     73 Logical and Visual Trees     75 Dependency Properties     80 A Dependency Property Implementation     81 Change Notification     83 Property Value Inheritance     85 Support for Multiple Providers     87 Attached Properties     89 Summary     93   Part II Building a WPF Application Chapter 4: Sizing, Positioning, and Transforming Elements     97 Controlling Size     98 Height and Width     98 Margin and Padding     100 Visibility     102 Controlling Position     103 Alignment     103 Content Alignment     104 FlowDirection     105 Applying Transforms     106 RotateTransform     108 ScaleTransform.      109 SkewTransform.      112 TranslateTransform     112 MatrixTransform     112 Combining Transforms     113 Summary     114   Chapter 5: Layout with Panels     115 Canvas     116 StackPanel     118 WrapPanel     120 DockPanel     122 Grid     125 Sizing the Rows and Columns     130 Interactive Sizing with GridSplitter     132 Sharing Row and Column Sizes     134 Comparing Grid to Other Panels     136 Primitive Panels     137 TabPanel     137 ToolBarPanel     138 ToolBarOverflowPanel     138 ToolBarTray .      138 UniformGrid.      138 SelectiveScrollingGrid.      138 Handling Content Overflow     139 Clipping     139 Scrolling     141 Scaling     143 Putting It All Together: Creating a Visual Studio—Like Collapsible, Dockable, Resizable Pane     147 Summary      157   Chapter 6: Input Events: Keyboard, Mouse, Stylus, and Multi-Touch     159 Routed Events     159 A Routed Event Implementation     160 Routing Strategies and Event Handlers     161 Routed Events in Action     162 Attached Events     165 Keyboard Events     168 Mouse Events     170 MouseEventArgs     171 Drag and Drop     172 Capturing the Mouse     173 Stylus Events     174 StylusDevice     174 Events     175 Multi-Touch Events     176 Basic Touch Events     177 Manipulation Events for Panning, Rotating, and Zooming     180 Commands     188 Built-In Commands     189 Executing Commands with Input Gestures     192 Controls with Built-In Command Bindings     193 Summary     194   Chapter 7: Structuring and Deploying an Application     195 Standard Windows Applications     195 The Window Class     196 The Application Class     199 Showing a Splash Screen     205 Creating and Showing Dialogs     206 Persisting and Restoring Application State     209 Deployment: ClickOnce Versus Windows Installer     210 Navigation-Based Windows Applications     211 Pages and Their Navigation Containers     212 Navigating from Page to Page     214 Passing Data Between Pages     219 Gadget-Style Applications     223 XAML Browser Applications     224 Limited Feature Set     226 Integrated Navigation      228 Deployment      229 Loose XAML Pages     231 Summary     232   Chapter 8: Exploiting Windows 7     233 Jump Lists     233 JumpTask     234 JumpPath     241 Taskbar Item Customizations     245 Using a Taskbar Item Progress Bar     246 Adding an Overlay to the Taskbar Item     247 Customizing the Thumbnail Content     247 Adding Thumb Buttons to the Taskbar Thumbnail     248 Aero Glass     249 TaskDialog     253 Summary     256   Part III Controls Chapter 9: Content Controls     261 Buttons     263 Button     264 RepeatButton     265 ToggleButton     265 CheckBox     266 RadioButton     266 Simple Containers     268 Label     268 ToolTip     269 Frame     271 Containers with Headers     272 GroupBox     273 Expander     273 Summary     274   Chapter 10: Items Controls     275 Common Functionality     276 DisplayMemberPath     277 ItemsPanel     278 Controlling Scrolling Behavior     280 Selectors     281 ComboBox     282 ListBox     287 ListView     290 TabControl     291 DataGrid     292 Menus     298 Menu     298 ContextMenu     301 Other Items Controls     302 TreeView     302 ToolBar     304 StatusBar     307 Summary     308   Chapter 11: Images, Text, and Other Controls     309 The Image Control      309 Text and Ink Controls      311 TextBlock     313 TextBox     315 RichTextBox     316 PasswordBox     316 InkCanvas     316 Documents     318 Creating Flow Documents     318 Displaying Flow Documents     329 Adding Annotations     331 Range Controls     334 ProgressBar     335 Slider     335 Calendar Controls     336 Calendar     336 DatePicker     338 Summary     339   Part IV Features for Professional Developers Chapter 12: Resources     343 Binary Resources     343 Defining Binary Resources     344 Accessing Binary Resources     345 Localizing Binary Resources     350 Logical Resources     351 Resource Lookup     355 Static Versus Dynamic Resources     355 Interaction with System Resources     360 Summary     362   Chapter 13: Data Binding     363 Introducing the Binding Object     363 Using Binding in Procedural Code     363 Using Binding in XAML     365 Binding to Plain .NET Properties     367 Binding to an Entire Object     369 Binding to a Collection     370 Sharing the Source with DataContext     374 Controlling Rendering     375 String Formatting     375 Using Data Templates     378 Using Value Converters     381 Customizing the View of a Collection     386 Sorting     386 Grouping     388 Filtering     392 Navigating     392 Working with Additional Views     394 Data Providers     396 XmlDataProvider     397 ObjectDataProvider     401 Advanced Topics     403 Customizing the Data Flow     403 Adding Validation Rules to Binding     405 Working with Disjoint Sources     409 Putting It All Together: The Pure-XAML Twitter Client     412 Summary     414   Chapter 14: Styles, Templates, Skins, and Themes     415 Styles     416 Sharing Styles     418 Triggers     423 Templates     430 Introducing Control Templates     431 Getting Interactivity with Triggers     432 Restricting the Target Type     434 Respecting the Templated Parent’s Properties     435 Respecting Visual States with Triggers     442 Respecting Visual States with the Visual State Manager (VSM)      447 Mixing Templates with Styles     456 Skins     458 Themes     465 Using System Colors, Fonts, and Parameters     465 Per-Theme Styles and Templates     466 Summary     470   Part V Rich Media Chapter 15: 2D Graphics     475 Drawings     476 Geometries     479 Pens     489 Clip Art Example     491 Visuals     493 Filling a DrawingVisual with Content     493 Displaying a Visual on the Screen     496 Visual Hit Testing     499 Shapes     505 Rectangle     507 Ellipse     508 Line     509 Polyline     510 Polygon     511 Path     511 Clip Art Based on Shapes     512 Brushes     513 Color Brushes     513 Tile Brushes     520 Brushes as Opacity Masks     527 Effects     529 Improving Rendering Performance     532 RenderTargetBitmap     532 BitmapCache     533 BitmapCacheBrush     535 Summary     535   Chapter 16: 3D Graphics     537 Getting Started with 3D Graphics     538 Cameras and Coordinate Systems     542 Position     543 LookDirection     544 UpDirection     548 OrthographicCamera Versus PerspectiveCamera     551 Transform3D     554 TranslateTransform3D     556 ScaleTransform3D     557 RotateTransform3D     559 Combining Transform3Ds     562 Model3D     563 Lights     563 GeometryModel3D     571 Model3DGroup     584 Visual3D     586 ModelVisual3D     587 UIElement3D     588 Viewport2DVisual3D     590 3D Hit Testing     592 Viewport3D     593 2D and 3D Coordinate System Transformation     596 Visual.TransformToAncestor     596 Visual3D.TransformToAncestor and Visual3D.TransformToDescendant     600 Summary     605   Chapter 17: Animation     607 Animations in Procedural Code     608 Performing Animation “By Hand”      608 Introducing the Animation Classes     609 Simple Animation Tweaks     616 Animations in XAML     621 EventTriggers Containing Storyboards     621 Using Storyboard as a Timeline     629 Keyframe Animations     630 Linear Keyframes     631 Spline Keyframes     633 Discrete Keyframes     634 Easing Keyframes     636 Easing Functions     637 Built-In Power Easing Functions     637 Other Built-In Easing Functions     639 Writing Your Own Easing Function     640 Animations and the Visual State Manager     643 Transitions     647 Summary     651   Chapter 18: Audio, Video, and Speech     653 Audio     653 SoundPlayer     654 SoundPlayerAction     654 MediaPlayer     655 MediaElement and MediaTimeline     656 Video     658 Controlling the Visual Aspects of MediaElement     658 Controlling the Underlying Media     661 Speech     664 Speech Synthesis     664 Speech Recognition     667 Summary     672   Part VI Advanced Topics Chapter 19: Interoperability with Non-WPF Technologies     675 Embedding Win32 Controls in WPF Applications     677 A Win32 Webcam Control     678 Using the Webcam Control in WPF     681 Supporting Keyboard Navigation     687 Embedding WPF Controls in Win32 Applications     692 Introducing HwndSource     692 Getting the Right Layout     696 Embedding Windows Forms Controls in WPF Applications     699 Embedding a PropertyGrid with Procedural Code     700 Embedding a PropertyGrid with XAML     702 Embedding WPF Controls in Windows Forms Applications     704 Mixing DirectX Content with WPF Content     708 Embedding ActiveX Controls in WPF Applications     714 Summary     718   Chapter 20: User Controls and Custom Controls     721 Creating a User Control     723 Creating the User Interface of the User Control     723 Creating the Behavior of the User Control     725 Adding Dependency Properties to the User Control     728 Adding Routed Events to the User Control     731 Creating a Custom Control     732 Creating the Behavior of the Custom Control     733 Creating the User Interface of the Custom Control     739 Considerations for More Sophisticated Controls     743 Summary     750   Chapter 21: Layout with Custom Panels     751 Communication Between Parents and Children     752 The Measure Step     752 The Arrange Step     754 Creating a SimpleCanvas     755 Creating a SimpleStackPanel     760 Creating an OverlapPanel     763 Creating a FanCanvas     768 Summary     773   Index     775  

Reviews

Author Information

Adam Nathan is a principal software development engineer for Microsoft Visual Studio, the latest version of which has been transformed into a first-class WPF application. Adam was previously the founding developer and architect for Popfly, Microsoft’s first product built on Silverlight, named one of the 25 most innovative products of 2007 by PCWorld Magazine. Having started his career on Microsoft’s Common Language Runtime team, Adam has been at the core of .NET and WPF technologies since the very beginning.   Adam’s books have been considered required reading by many inside Microsoft and throughout the industry. He is the author of the best-selling WPF Unleashed (Sams, 2006) that was nominated for a 2008 Jolt Award, Silverlight 1.0 Unleashed (Sams, 2008), and .NET and COM: The Complete Interoperability Guide (Sams, 2002); a coauthor of ASP.NET: Tips, Tutorials, and Code (Sams, 2001); and a contributor to books including .NET Framework Standard Library Annotated Reference, Volume 2 (Addison-Wesley, 2005) and Windows Developer Power Tools (O’Reilly, 2006). Adam is also the creator of PINVOKE.NET and its Visual Studio add-in. You can find him online at www.adamnathan.net, or @adamnathan on Twitter.

Tab Content 6

Author Website:  

Customer Reviews

Recent Reviews

No review item found!

Add your own review!

Countries Available

All regions
Latest Reading Guide

wl

Shopping Cart
Your cart is empty
Shopping cart
Mailing List