Programming the Windows Runtime by Example
Home > Computing and Information Technology > Computer programming / software engineering > Apps programming > Programming the Windows Runtime by Example: A Comprehensive Guide to WinRT with Examples in C# and XAML
Programming the Windows Runtime by Example: A Comprehensive Guide to WinRT with Examples in C# and XAML

Programming the Windows Runtime by Example: A Comprehensive Guide to WinRT with Examples in C# and XAML


     0     
5
4
3
2
1



Out of Stock


Notify me when this book is in stock
X
About the Book

Master Windows 8.1/Windows Runtime Programming Through 80 Expert Projects This is the most complete, hands-on, solutions-focused guide to programming modern Windows applications with the Windows Runtime. Leading Windows development consultants Jeremy Likness and John Garland present easy-to-adapt C# and XAML example code for more than 80 projects. Their real-world application examples help you apply Windows 8.1’s best improvements, including large tiles, the new search control, flyouts, command bars, native WinRT networking, and new deployment and sideloading options. Drawing on their pioneering experience, they illuminate key areas of the Windows Runtime API, offering uniquely detailed coverage of encryption, cloud connectivity, devices, printers, and media integration. You’ll find cutting-edge tips and tricks available in no other book. This is an indispensable resource for all intermediate-to-advanced Windows developers, and for any architect building desktop, tablet, or mobile solutions with Microsoft technologies. Its focus on both C# and XAML will make it valuable to millions of Windows developers already familiar with Silverlight, WPF, and/or .NET. Coverage includes • Creating robust app interfaces with the newest XAML controls, including flyouts and command bars • Saving data in a persistent “roaming zone” for syncing across Windows 8.1 devices • Using Visual State Manager (VSM) to build apps that adapt to various device resolutions and orientations • Integrating virtually any form of data into your apps • Connecting with web services, RSS, Atom feeds, and social networks • Securing apps via authentication, encrypting, signing, and single sign-on with Microsoft Account, Facebook, Google, and more • Leveraging Windows 8.1 media enhancements that improve battery life and app performance • Networking more effectively with Windows 8.1’s revamped HTTP implementation and new location APIs • Using Tiles and Toasts to keep apps alive and connected, even when they aren’t running • Enabling users to send content between devices via NFC tap and send • Ensuring accessibility and globalizing your apps • Efficiently debugging, optimizing, packaging, and deploying your apps • Building sideloadable apps that don’t have to be published in Windows Store “This book doesn’t just focus on singular concepts, it also provides end-to-end perspective on building an app in WinRT. It is one of those essential tools for Windows developers that will help you complete your software goals sooner than without it!” —Tim Heuer, Principal Program Manager Lead, XAML Platform, Microsoft Corporation

Table of Contents:
Foreword   xix Preface   xxii Chapter 1  The New Windows Runtime   1 Windows Runtime Specifics   1 Windows Store Apps   4    Example: Create a Windows Store App   5 .NET and WinRT 9    Fundamental Types   9    Mapped Types   10    Streams and Buffers   14 Desktop Applications   15    Example: Reference WinRT from a Desktop Application   15    Example: Examine Projections in a WinRT Component   20 Asynchronous Functions   24 Summary   27 Chapter 2  Windows Store Apps and WinRT Components   29 Fundamentals of a Windows Store App   30    Windows Store App Templates   32    Understanding the App Manifest   45    Finding Your Package on Disk   52    Running Your App   54 Application Lifecycle   61    The Navigation Helper and Suspension Manager   67 Managed WinRT Components 75    Creating a Managed WinRT Component   76    Calling Managed WinRT Components from Any Language   78 Summary   79 Chapter 3  Layouts and Controls   81 The Visual Tree 83 Data-Binding   85    Dependency Properties   91    Attached Properties 94    Value Precedence 95    Property Change Notification 95 Animations 97    Example: Dynamically Apply Animations to a Control   97 The Visual State Manager 100    Example: Visual State Manager   101    Groups   103    States   105    Transitions   106 The Visual State Manager Workflow   107 Programmatic Access to Visual States 109 Custom Visual State Managers   109 Styles 111 Templates   112    Example: Using Templates   112 Layouts   115    Panel   115    Border 115    Canvas   116    Grid   116    StackPanel   117    VirtualizingPanel and VirtualizingStackPanel   118    WrapGrid 119    VariableSizedWrapGrid   119    ContentControl   120    ItemsControl   121    ScrollViewer   122    ViewBox   122    GridView   123    ListBox   123    ListView   124    FlipView   124    Example: Using the Viewbox and Various Layouts   125 Controls   130    Flyouts   133 Custom Controls   135    Example: Creating a Custom Control   136 Parsing XAML   140 HTML Pages   143    Example: Working with HTML and JavaScript   144 Summary   150 Chapter 4  Data and Content   153 Example: Data Manipulation with the Skrape App 154 The Clipboard   154 Application Storage   159    Roaming Data   161    Containers   162    Settings   163    Composite Values   165 Storage Folders and Files   166    Storage Folders   168    Storage Files   170    Buffers and Streams   171    Path and File Helper Classes   174    Storage Query Operations   176    Pickers and Cached Files   180    Compression   187 Data Formats 191    Example: Working with Data Formats   192    XSLT Transformations   195 Document Data   196 Summary   198 Chapter 5  Web Services and Syndication   199 SOAP   200 REST   209 OData Client   217 Syndication   219 Summary   223 Chapter 6  Tiles and Toasts   225 Tiles   226    Default Tiles   227    Live Tiles   229    Cycling Tile Notifications   234    Secondary Tiles   236 Badges   239 Periodic Notifications   242 Toasts   242    Toasts in Desktop Applications   248 Push Notifications   249    Registering to Receive Push Notifications   251    Sending Push Notifications   253 Summary   259 Chapter 7  Connecting to the Cloud   261 Windows Azure Mobile Services   262    Example: Managing a Shared Group of Subscribers   267    Connecting an App to a Mobile Services Instance   267    Authentication   269    Data Storage   274    Custom APIs   289    Integrated Push Notification Support   291    Scheduled Tasks   297    Mobile Services Deployment Tiers   298 Live Connect   301    Getting Started   302    The Example App   304    Authentication   304    Working with Profile Information   308    Working with Contacts   310    Working with Calendars and Events   311    Working with OneDrive   315 Summary   321 Chapter 8  Security   323 Authentication   324    Multistep Authentication (Google)   330    Unlocking the Password Vault   331 Encryption and Signing 333    The Data Protection Provider   333    Symmetrical Encryption   337    Verification   343    Asymmetric Algorithms   345 Summary   347 Chapter 9  Model-View-ViewModel (MVVM)   349 UI Design Patterns   350    The Model   351    The View   352    Model-View-Controller (MVC)   353    Model-View-Presenter (MVP)   354    Model-View-ViewModel (MVVM)   355 The ViewModel Decomposed   356 Common MVVM Misperceptions   362 Benefits of MVVM   364 Common MVVM Solutions   367    Design-Time Data   367    Accessing the UI Thread   369    Commands   371    Handling Dialogs   371    Selection Lists   371    Filtered Lists   373    Validation   375 Summary   377 Chapter 10  Networking   379 Web and HTTP   379 HomeGroup   382 Connectivity and Data Plans   384 Sockets   389    WebSockets   389    UDP and TCP Sockets 392 Proximity (Near Field Communications)   397    NFC-Only Scenarios   397    Tap-to-Connect Scenarios   403 Background Transfers   408 Summary   412 Chapter 11  Windows Charms Integration   415 Displaying App Settings   417    The Settings Example   418    Adding Settings Entries   418 Sharing   421    The Share Source Example   423    Creating a Share Source App   424    The Share Target Example   433    Creating a Share Target App   434    Debugging Share Target Apps   441 Using Play To   442    The Play To Example   443    Creating a Play To Source App   444    Creating a Play To Target App   446 Summary   448 Chapter 12  Additional Windows Integration   451 Integrating with the File and Contact Pickers   452    The Example App   453    File Open Picker   454    File Save Picker 458    Contact Picker   460 Application Activation Integration   462    The Example App   463    File Activation   463    Protocol Activation   467    Account Picture Provider   470    AutoPlay   471 Working with Contacts and Appointments   473    The Example App   474    Contacts   474    Appointments   476 Summary   478 Chapter 13  Devices   479 Working with Input Devices   480    The Example App   480    Identifying Connected Input Devices   481    Pointer, Manipulation, and Gesture Events 484    Keyboard Input   495 Sensor Input   498    The Example App   498    Geolocation   502    Geofencing   510    Motion and Orientation Sensors   517 Summary   529 Chapter 14  Printers and Scanners   531 Working with Printers   532    The Example App   532    Getting Started   533    Configuring a Print Task   534    Providing Printing Content   542 Working with Scanners 547    The Example App   547    Determining Scanner Availability   548    Working with Scan Sources 549    Previewing   550    Scanning   551    Scanner Settings   552 Summary   556 Chapter 15  Background Tasks   559 The Thread Pool   560 Uploads and Downloads   562 Audio 563 Lock Screen Tasks 570    Lock Screen Capabilities   570    The Background Task   573    Listing Background Tasks   576    Timer   578    Conditions   578    Debugging Background Tasks   580 Raw Push Notifications   581 Control Channel   585 System Events   587 Summary   588 Chapter 16  Multimedia   589 Playing Multimedia Content   590    The Example App   590    Getting Started   591    Controlling Playback   592    Appearance   595    Audio Settings   596    Media Information   597    Markers   597 Acquiring Audio and Video   598    The Example App   599    Declaring Application Capabilities   599    Using CameraCaptureUI   600    Using MediaCapture   604 Text-to-Speech Support   610    The Example App   611    Using the SpeechSynthesizer   611 Summary   613 Chapter 17  Accessibility 615 Requested Theme   616    High Contrast   618 Keyboard Support   620 Automation Properties   622 Testing with Narrator   623 Automation and Lists   624 Live Settings   625 Automation Peers   626 Accessibility Checker   627 Summary   629 Chapter 18  Globalization and Localization   631 Design Considerations   632 Default Language   633 Configuring Preferred Languages 635 Resource Qualification and Matching   637 Localizing XAML Elements   639 Formatting Dates, Numbers, and Currencies for Locale   642 MVVM and Localization 643 Multilingual Toolkit 644 Summary   648 Chapter 19  Packaging and Deploying 649 Packaging Your App   650    Creating an App Package   650    App Package and App Bundle Contents   654    Package Identifier   655 Deploying Your App   657    Publishing Your App in the Windows Store 657    Other Deployment Options   665 Making Money with Your App in the Windows Store   667    The Example App   668    Pricing Your App in the Windows Store   669    Trial Mode Apps   670    In-App Purchases   675    Including Advertisements   678 Summary   683 Chapter 20  Debugging and Performance Optimization   685 Understanding the Debugger   686    Native, Managed, and Script Debuggers   686    Just My Code   688    Edit and Continue   690    Just in Time Debugging   691    How to Launch the Debugger   691    Program Databases   692    Debug Windows   693    Managing Exceptions   694 Logging and Tracing   696 Profiling and Performance Analysis   702    Performance Tips   704    CPU Sampling   706    XAML UI Responsiveness   709    Energy Consumption 710 Code Analysis   712 Summary   717 Appendix A  Under the Covers   719 Fundamental WinRT Concepts   719 Namespaces   720 Base Types   720 Primitives   720 Classes and Class Methods   721 Structures   722 Generics   722 Null   723 Enumerations   723 Interfaces   723 Properties   723 Delegates   724 Events   724 Arrays   725 WinRT Internals   725 Appendix B  Glossary   733 Index   749

About the Author :
Jeremy Likness is a multi-year Microsoft MVP for XAML technologies. A Principal Consultant for Wintellect with 20 years of experience developing enterprise applications, he has worked with software in multiple verticals ranging from insurance, health and wellness, supply chain management, and mobility. His primary focus for the past decade has been building highly scalable web-based solutions using the Microsoft technology stack with client stacks ranging from WPF, Silverlight, and Windows 8.1 to HTML5 and JavaScript. Jeremy has been building enterprise line of business applications with Silverlight since version 2.0, and he started writing Windows 8 apps when the Consumer Preview was released in 2011. Prior to Wintellect, Jeremy was Director of Information Technology and served as development manager and architect for AirWatch, where he helped the company grow and solidify its position as one of the leading wireless technology solution providers in the United States prior to their acquisition by VMware. A fluent Spanish speaker, Jeremy served as Director of Information Technology for HolaDoctor (formerly Dr. Tango), where he architected a multilingual content management system for the company’s Hispanic-focused online diet program. Jeremy accepted his role there after serving as Development Manager for Manhattan Associates, an Atlanta-based software company that provides supply chain management solutions. John Garland is a Principal Consultant for Wintellect with more than 15 years of experience developing software solutions. Prior to consulting, he spent much of his career working on high-performance video and statistical analysis tools for premier sports teams, with an emphasis on the NFL, the NBA, and Division 1 NCAA football and basketball. His consulting clients range from small businesses to Fortune-500 companies, and his work has been featured at Microsoft conference keynotes and sessions. John is a Microsoft Client Development MVP, as well as a member of the Windows Azure Insiders and Windows Azure Mobile Services Advisory Board. He lives in New Hampshire with his wife and daughter, where he is an active speaker and participant in the New England software development community. He is a graduate of the University of Florida with a Bachelor’s degree in Computer Engineering and holds Microsoft Certifications spanning Windows, Silverlight, Windows Phone, and Windows Azure. John is the author of the ebook Windows Store Apps Succinctly (Syncfusion, 2013).

Review :
“This book doesn’t just focus on singular concepts, it also provides end-to-end perspective on building an app in WinRT. It is one of those essential tools for Windows developers that will help you complete your software goals sooner than without it!” —Tim Heuer, Principal Program Manager Lead, XAML Platform, Microsoft Corporation “This is a great from-the-ground-up, very complete book on building Windows Store Apps. You’ll find it on your desk a year from now all dog-eared and marked up from use.” —Dave Campbell, MVP, WindowsDevNews.com “Programming with Windows Runtime by Example is a must-have book for any professional developer building apps for WinRT/Win8.1, especially in the LOB space for modern apps on Windows 8.1. For me it is the reference I provide my team building LOB applications for WinRT. Jeremy and John have done a great job putting together a great reference and educational book on professional development for the WinRT platform.” —David J. Kelley, CTO, Microsoft MVP “Jeremy and John are both very much IT masters from the old guard of software development. With countless years of bending, shaping, and influencing the world of software development behind them both, they continue to do so as they push forward into new and emerging technologies.   “As with everything they do, this book also reflects their ongoing dedication and passion for their quest to bring the reader not only the information he or she requires, but far more beyond that, they build knowledge step-by–step, then deliver it to the reader with cutting-edge, ninja-like precision to deliver exactly what knowledge is needed, when it’s needed, and where it’s needed.   “If you want to learn the Windows Runtime, then I can think of no finer book, and no finer guides to the WinRT landscape. By the end of this book, you’ll have the knowledge, the power, and a hefty dose of passion to go out into the new millennium and create some of the best WinRT apps available.” —Peter “Shawty” Shaw, LinkedIn .NET User Group manager “This book is an invaluable resource for budding WinRT developers. It covers the basics to more advanced topics like MVVM. Readers will find the chapter entitled ‘Connecting to the Cloud’ especially useful in getting up to speed with Azure and creating cloud connected apps.” —Daniel Vaughan, President of Outcoder, Microsoft MVP, Author of Windows Phone 8 Unleashed “There are books that provide reference for a development topic, and others that you will read from cover to end. Programming the Windows Runtime by Example by Jeremy Likness and John Garland should be your go-to guide for getting up to speed on WinRT. Jeremy and John wrote this book with the intention of being easy to follow and hard to forget, and they succeeded in both areas. I recommend this book for all developers, whether new to WinRT development, or those like me who just want to fill in the gaps on advanced topics.” —Chris Woodruff, DeepFriedBytes.com, Microsoft MVP


Best Sellers


Product Details
  • ISBN-13: 9780321927972
  • Publisher: Pearson Education (US)
  • Publisher Imprint: Addison-Wesley Educational Publishers Inc
  • Height: 231 mm
  • No of Pages: 816
  • Sub Title: A Comprehensive Guide to WinRT with Examples in C# and XAML
  • Width: 179 mm
  • ISBN-10: 0321927974
  • Publisher Date: 26 Jun 2014
  • Binding: Paperback
  • Language: English
  • Spine Width: 43 mm
  • Weight: 1256 gr


Similar Products

Add Photo
Add Photo

Customer Reviews

REVIEWS      0     
Click Here To Be The First to Review this Product
Programming the Windows Runtime by Example: A Comprehensive Guide to WinRT with Examples in C# and XAML
Pearson Education (US) -
Programming the Windows Runtime by Example: A Comprehensive Guide to WinRT with Examples in C# and XAML
Writing guidlines
We want to publish your review, so please:
  • keep your review on the product. Review's that defame author's character will be rejected.
  • Keep your review focused on the product.
  • Avoid writing about customer service. contact us instead if you have issue requiring immediate attention.
  • Refrain from mentioning competitors or the specific price you paid for the product.
  • Do not include any personally identifiable information, such as full names.

Programming the Windows Runtime by Example: A Comprehensive Guide to WinRT with Examples in C# and XAML

Required fields are marked with *

Review Title*
Review
    Add Photo Add up to 6 photos
    Would you recommend this product to a friend?
    Tag this Book Read more
    Does your review contain spoilers?
    What type of reader best describes you?
    I agree to the terms & conditions
    You may receive emails regarding this submission. Any emails will include the ability to opt-out of future communications.

    CUSTOMER RATINGS AND REVIEWS AND QUESTIONS AND ANSWERS TERMS OF USE

    These Terms of Use govern your conduct associated with the Customer Ratings and Reviews and/or Questions and Answers service offered by Bookswagon (the "CRR Service").


    By submitting any content to Bookswagon, you guarantee that:
    • You are the sole author and owner of the intellectual property rights in the content;
    • All "moral rights" that you may have in such content have been voluntarily waived by you;
    • All content that you post is accurate;
    • You are at least 13 years old;
    • Use of the content you supply does not violate these Terms of Use and will not cause injury to any person or entity.
    You further agree that you may not submit any content:
    • That is known by you to be false, inaccurate or misleading;
    • That infringes any third party's copyright, patent, trademark, trade secret or other proprietary rights or rights of publicity or privacy;
    • That violates any law, statute, ordinance or regulation (including, but not limited to, those governing, consumer protection, unfair competition, anti-discrimination or false advertising);
    • That is, or may reasonably be considered to be, defamatory, libelous, hateful, racially or religiously biased or offensive, unlawfully threatening or unlawfully harassing to any individual, partnership or corporation;
    • For which you were compensated or granted any consideration by any unapproved third party;
    • That includes any information that references other websites, addresses, email addresses, contact information or phone numbers;
    • That contains any computer viruses, worms or other potentially damaging computer programs or files.
    You agree to indemnify and hold Bookswagon (and its officers, directors, agents, subsidiaries, joint ventures, employees and third-party service providers, including but not limited to Bazaarvoice, Inc.), harmless from all claims, demands, and damages (actual and consequential) of every kind and nature, known and unknown including reasonable attorneys' fees, arising out of a breach of your representations and warranties set forth above, or your violation of any law or the rights of a third party.


    For any content that you submit, you grant Bookswagon a perpetual, irrevocable, royalty-free, transferable right and license to use, copy, modify, delete in its entirety, adapt, publish, translate, create derivative works from and/or sell, transfer, and/or distribute such content and/or incorporate such content into any form, medium or technology throughout the world without compensation to you. Additionally,  Bookswagon may transfer or share any personal information that you submit with its third-party service providers, including but not limited to Bazaarvoice, Inc. in accordance with  Privacy Policy


    All content that you submit may be used at Bookswagon's sole discretion. Bookswagon reserves the right to change, condense, withhold publication, remove or delete any content on Bookswagon's website that Bookswagon deems, in its sole discretion, to violate the content guidelines or any other provision of these Terms of Use.  Bookswagon does not guarantee that you will have any recourse through Bookswagon to edit or delete any content you have submitted. Ratings and written comments are generally posted within two to four business days. However, Bookswagon reserves the right to remove or to refuse to post any submission to the extent authorized by law. You acknowledge that you, not Bookswagon, are responsible for the contents of your submission. None of the content that you submit shall be subject to any obligation of confidence on the part of Bookswagon, its agents, subsidiaries, affiliates, partners or third party service providers (including but not limited to Bazaarvoice, Inc.)and their respective directors, officers and employees.

    Accept

    New Arrivals


    Inspired by your browsing history


    Your review has been submitted!

    You've already reviewed this product!