Mastering Windows 8 C++ App Development
Formats:
save 15%!
save 37%!
Free Shipping!
| Also available on: |
|
- Details the most important features of C++, XAML, and WinRT for building fantastic Windows Store apps
- Full of detailed and engaging code samples that can be used as a basis for your own projects
- Provides a clear overview of Windows Runtime and C++/CX
Book Details
Language : EnglishPaperback : 304 pages [ 235mm x 191mm ]
Release Date : April 2013
ISBN : 1849695024
ISBN 13 : 9781849695022
Author(s) : Pavel Yosifovich
Topics and Technologies : All Books
Table of Contents
PrefaceChapter 1: Introduction to Windows 8 Apps
Chapter 2: COM and C++ for Windows 8 Store Apps
Chapter 3: Building UI with XAML
Chapter 4: Layout, Elements, and Controls
Chapter 5: Data Binding
Chapter 6: Components, Templates, and Custom Elements
Chapter 7: Applications, Tiles, Tasks, and Notifications
Chapter 8: Contracts and Extensions
Chapter 9: Packaging and the Windows Store
Index
- Chapter 1: Introduction to Windows 8 Apps
- Introducing Windows 8
- Touch everywhere
- The Start (Home) screen
- The AppBar
- The Charms bar
- Desktop apps versus Store apps
- The Windows Runtime
- Language projections
- Building the user interface
- Creating your first Store application
- Closing an application
- Application deployment
- Where did int.ToString come from?
- Project structure
- Summary
- Chapter 2: COM and C++ for Windows 8 Store Apps
- Welcome to C++11
- New features in C++11
- nullptr
- auto
- Lambdas
- Smart pointers
- Conclusion
- COM and WinRT
- The IUnknown interface
- IInspectable interface
- Creating a WinRT object
- WinRT metadata
- The Windows Runtime Library
- C++/CX
- Creating and managing objects
- Accessing members
- Methods and properties
- Delegates
- Events
- Defining types and members
- A WinRT component project
- Adding properties and methods
- Adding an event
- Consuming a WinRT component
- Building a C++ client
- Building a C# client
- The Application Binary Interface
- Asynchronous operations
- Using tasks for asynchronous operations
- Cancelling asynchronous operations
- Error handling
- Using existing libraries
- STL
- MFC
- ATL
- Win32 API
- CRT
- DirectX
- C++ AMP
- The Windows Runtime class library
- Strings
- Collections
- Exceptions
- Summary
- Chapter 3: Building UI with XAML
- XAML
- XAML basics
- Type converters
- Complex properties
- Dependency properties and attached properties
- Content properties
- Collection properties
- Markup extensions
- Naming elements
- Connecting events to handlers
- XAML rules summary
- Introducing the Blend for Visual Studio 2012 tool
- XAML compilation and execution
- Connecting XAML, H, and CPP files to the build process
- Resources
- Binary resources
- Logical resources
- Managing logical resources
- Duplicate keys
- Styles
- Implicit (automatic) styles
- Style inheritance
- Store application styles
- Summary
- Chapter 4: Layout, Elements, and Controls
- Introducing layout
- Layout panels
- StackPanel
- Grid
- Canvas
- Adding children to a panel dynamically
- VariableSizedWrapGrid
- Panel virtualization
- Virtualizing panels
- Working with elements and controls
- Content controls
- Buttons
- ScrollViewer
- Other content controls to note
- Collection-based controls
- ListBox and ComboBox
- ListView and GridView
- FlipView
- Text-based elements
- Using custom fonts
- TextBlock
- TextBox
- PasswordBox
- RichTextBlock and RichEditBox
- Images
- The SemanticZoom control
- Summary
- Chapter 5: Data Binding
- Understanding data binding
- Data binding concepts
- Element-to-element binding
- Object-to-element binding
- Binding failures
- Change notifications
- Binding to collections
- Customizing a data view
- Value converters
- Other parameters for Convert and ConvertBack
- Data template selectors
- Commands
- Introduction to MVVM
- MVVM constituents
- Building an MVVM framework
- More on MVVM
- Summary
- Chapter 6: Components, Templates, and Custom Elements
- Windows Runtime Components
- Converting C++ to WinRT
- Crossing the ABI
- Consuming Windows Runtime Components
- Other C++ library projects
- Custom control templates
- Building a control template
- Using the control's properties
- Handling state changes
- Customizing using attached properties
- Custom elements
- User controls
- Creating a color picker user control
- Dependency properties
- Defining dependency properties
- Building the UI
- Adding events
- Using the ColorPicker
- Custom controls
- Creating a ColorPicker custom control
- Binding in code
- Custom panels
- Custom drawn elements
- Summary
- Chapter 7: Applications, Tiles, Tasks, and Notifications
- Application lifecycle
- Saving and restoring the state
- Determining application execution states
- State store options
- Helper classes
- Live tiles
- Setting application tile defaults
- Updating the tile's contents
- Enabling cycle updates
- Tile expiration
- Badge updates
- Creating secondary tiles
- Activating a secondary tile
- Using toast notifications
- Toast options
- Push notifications
- Push notification architecture
- Building a push notification application
- The application server
- Registering for push notifications
- Issuing the push notification
- Push notifications for secondary tiles
- Background tasks
- What is a task?
- Creating and registering a task
- Implementing a task
- Task debugging
- Task progress and cancellation
- Playing background audio
- Playing audio
- Maintaining background audio
- Sound-level notifications
- Lock screen apps
- Requesting to set a lock screen app
- Other common operations for lock screen apps
- Background tasks limits
- Background transfers
- Example – downloading a file
- Summary
- Chapter 8: Contracts and Extensions
- Capabilities
- Contracts
- Share contract
- Share source
- Share target
- Sharing files
- Sharing page UI generation
- FileOpenPicker contract
- Implementing a FileOpenPicker contract
- Debugging contracts
- Extensions
- Settings extension
- Other contracts and extensions
- Summary
- Chapter 9: Packaging and the Windows Store
- The application manifest
- The application view state
- Implementing view state changes
- Packaging and validating
- Using the Windows App Certification Kit
- Summary
Pavel Yosifovich
Code Downloads
Download the code and support files for this book.
Submit Errata
Please let us know if you have found any errors not listed on this list by completing our errata submission form. Our editors will check them and add them to this list. Thank you.
Sample chapters
You can view our sample chapters and prefaces of this title on PacktLib or download sample chapters in PDF format.
- Leverage your existing C++ skills with this new and exciting platform
- Discover how to effectively use C++/CX to call Windows Runtime APIs
- Integrate XAML for fast and fluid user interfaces
- Create custom controls for special UI scenarios
- Learn how to integrate your application with Windows 8 by implementing contracts
- Build data-driven apps with XAML, data binding, and MVVM
Windows 8 provides an unprecedented opportunity for developers to create applications for a new and exciting platform, for an entirely new market. Leveraging modern C++ and the new Windows Runtime, this book guides you through the many facets of WinRT whilst using modern C++ features for ultimate power and performance.
"Mastering Windows 8 C++ App Development" shows you how to create Windows Store apps that use many of the new features and functionality available for Windows 8. You'll discover how you can harness the power of the new Windows Runtime with C++ combined with XAML for the creation of fantastic user experiences.
Starting with coverage of C++/CX (a set of extensions that make working with WinRT easier) and user interface design with XAML, this book shows you how to use major Windows 8 features, including Live Tiles and Contracts, while leveraging common patterns such as data binding and the Model View ViewModel (MVVM). You'll discover how WinRT works, its various capabilities, and how it can best be leveraged using C++11 and Visual Studio 2012.
Specifically designed to be an engaging and practical tutorial, Mastering Windows 8 C++ App Development will augment your skills and help you create high quality Windows Store apps.
If you are a C++ developer who wants to utilize the combined power of COM, WinRT, C++/CX, and XAML to build Store apps for the new Windows 8 platform, then this book is for you. Prior experience with XAML-based technologies is not required.

