Developing Universal Windows 10 Store Apps with C# and XAML

מק"ט: #1391 | משך קורס: 40 שעות אק'

This is an advanced course for experienced C# and XAML Developers who want to learn how to use these skills in order to develop windows 10 store applications. The new Universal Windows Platform is designed so that your apps can be used on any windows 10 device. This course will teach you how to develop windows store applications using the windows runtime API. You will learn the application model of windows store apps. We will talk about writing adaptive and responsive UI and explore the layout controls and other features that enable it.

You will become familiar with new controls developed only for windows 10 apps. We will also introduce new panels and new features. We will talk about the new model for visual states management and use it along with custom behaviors, triggers and transitions to bring life into the applications. Finally, we will talk about MVVM and PRISM and show how to build the application in a composite and manageable way.

הקורס פעיל לקבוצות מטעם ארגונים בלבד, ניתן לשלוח פנייה רק אם מדובר בקבוצה
*שדות חובה


  • Build fluid user interfaces for windows store apps in XAML
  • Create adaptive and responsive UI that look great on any windows 10 device
  • Use Microsoft Blend effectively to improve the development process of XAML UI

קהל יעד

This course is intended for professional developers with experience in building user interfaces, who are comfortable programming in C# and would like to learn how to create modern applications for windows 10 devices using XAML.

תנאי קדם

  • At least 2 years' experience programming in C#
  • Previous experience building GUI.
  • Recommended at least minimal experience with XAML


Module 1: Introduction

  • Introduction of Windows Store Apps
  • Introduction of Universal Windows Platform
  • Development Tools: Visual Studio and Blend
  • Demo: Multi Devices Hello World


Module 2: Getting Started

  • Running the application: Local machine, Simulator and Emulator
  • Understanding the App Package and Manifest
  • Making the app World-Ready
  • Making the app Accessible
  • Submitting to the windows store


Module 3: Layout

  • Introduction to Layout
  • Layout properties
  • Transformations
  • Basic Panels
  • Wrap Grids and Relative Panel
  • Split Panel
  • Demo: Layout


Module 4: Controls

  • Content Controls
  • Range Controls
  • Input Controls
  • The Scroll Viewer
  • Text
  • Images
  • Other Controls
  • Demo: Controls


Module 5: Application Lifecycle

  • Overview
  • Suspend and Resume
  • Persisting and restoring data
  • Demo: Persisting data on suspend


Module 6: Adaptive and Responsive UI

  • Adaptive layout overview
  • Introduction to visual states
  • Adaptive trigger explained
  • Demo: Adaptive UI

Module 7: Styles and Templates

  • Recap of styles and templates
  • Control Templates
  • Using Visual states in control templates
  • Styles
  • Default Styles
  • Combining Styles and Templates
  • Demo: Styling and Templating a control


Module 8: Data Templates and Items Controls

  • Data Templates introduction
  • The List View
  • The Grid View
  • Item Template
  • Implicit Data Template
  • Demo: Data Template Selector
  • Items Panel Template
  • Container Styles
  • Demo: Styling List View


Module 9: PRISM

  • Introduction to PRISM 6
  • Setting up the App object
  • Navigation Service
  • Dependency Injection
  • View Model Locator
  • Messaging


Module 10: Behaviors and Triggers

  • Introduction to Behaviors
  • Using the Built-In Behaviors
  • Demo: Behaviors
  • Behaviors, Triggers and Actions
  • Demo: Triggers and Actions
  • Visual State Triggers
  • Custom Visual State Triggers
  • Demo: Custom Visual State Triggers


Module 11: Animation and Transitions

  • Transitions
  • Animations
  • Demo: Editing storyboards in Blend
  • Demo: Animating Items Controls


Module 12: Vector Graphics

  • Shapes in WinRT
  • The Path object
  • The path language


Module 13: Data Binding

  • Introduction to Data Binding
  • Demo: Binding to data context
  • Demo: Notify Property Changed
  • Demo: Binding to elements
  • Demo: Binding to relative source
  • x:Bind explained
  • Demo: x:Bind