SlideShare a Scribd company logo
1 of 20
Developing Windows 8 Applications
with HTML, CSS and JavaScript

Stacy Vicknair
Sparkhound
0
Welcome to Houston TechFest
Thank you for being a part of the
7th Annual Houston TechFest!
• Please turn off all electronic devices or set them to vibrate.
• If you must take a phone call, please do so in the lobby so as not
to disturb others.
• Thanks to our Diamond Sponsors:

1
Information
• Speaker presentation slides will be available at
www.houstontechfest.org within a week
• Don’t forget to complete the Bingo card to be
eligible for door prizes

2
ABOUT ME
Stacy Vicknair, MVP
Senior Development Consultant
Blog
http://www.wtfnext.com
Toastmasters
http://www.toastmasters.org
http://www.batonrougespeaks.com

Twitter: @svickn
Email: stacy.vicknair@sparkhound.com
“BE A HERO. GROW A BEARD.”
The Sparkhound Foundation is sponsoring the growth of
facial hair to raise Prostate Cancer Awareness.
Through Septembeard we will
raise funds for the research and
treatment of prostate cancer.

Want to join us? Learn more at Septembeard.org.
Agenda
•
•
•
•
•
•
•
•
•
•

Windows Store App Stack
Why choose HTML, CSS, and JS?
Basic Project Structure
Adding Elements and Controls
Promises
Binding
State Management
Navigation
What’s coming in Windows 8.1?
Resources and Links
5
Windows Store App Stack

6
Why use HTML, CSS and JS?
•
•
•
•

You’re already well-versed in web development
Leverage familiar client-side libraries
You aren’t as familiar with XAML
The app only deals with web-based services

7
Basic Project Structure
• package.appxmanifest
– Set app-wide settings such as
icons, tiles, capabilities, declarations

• WinJS
– Adds controls, promises, animations, etc.

• HTML / CSS files
– Act as the View

• JavaScript files
– Act as the Model / Controller
8
Adding Elements and Controls
• It’s HTML!
– Basic Elements are the same ones you know already.
• input, button, a…

– Wiring events is normal too.
• Element.addEventListener(type, listener[, useCapture])
• Element.onclick = function() {}
• jQuery is an option, v2.0+

• More advanced controls included in the WinJS
library.

9
Available WinJS Controls
•
•
•
•
•
•
•
•
•
•

•
•
•
•
•
•
•
•
•
•
•

AppBar
BackButton
DatePicker
FlipView
Flyout
ListView
HtmlControl
ItemContainer
Menu
NavBar
10

PageControl
Rating
Repeater
SearchBox
SemanticZoom
SettingsFlyout
TimePicker
ToggleSwitch
Tooltip
ViewBox
x-ms-webview
Promises
• The gateway to asynchronous processing in Win8
HTML, CSS, and JS.
• Can assign callbacks via .then()
• Can wait on multiples with combine()

11
DEMO
• OOTB Blank Solution
• Adding Elements and Controls
• Promises

12
Binding
• Similar to Knockout bindings
– BUT: Only one way binding

• Allows binding of objects to the HTML view
• To perform bindings:
– Specify the element component bindings with datawin-bind
• innerHtml
• style.<stylename>
• onclick

– Use WinJS.Binding.processAll(element, model)
13
Saving and Resuming State
• From Windows.Storage.ApplicationData.current
• Main types:
– Temporary: No guarantee that this will last beyond the
current session
• temporaryFolder
• sessionState

– Local: Saved on Local Machine
• localSettings
• localFolder

– Roaming: Associated with the Windows Live account
• roamingSettings, roamingFolder
14
DEMO
• Binding
• Saving and Resuming State
• Navigation

15
What coming in Windows 8.1?
•
•
•
•
•

Improved Performance
Bundling to minimize app size
More Windows Sizes
Better ListViews / Drag and Drop support OOTB
New controls

http://msdn.microsoft.com/en-us/library/windows/apps/bg182410
16
Agenda
•
•
•
•
•
•
•
•
•
•

Windows Store App Stack
Why choose HTML, CSS, and JS?
Basic Project Structure
Adding Elements and Controls
Promises
Binding
State Management
Navigation
What’s coming in Windows 8.1?
Resources and Links
17
Resources and Links
Get codeSHOW() off of the App Store!
Developing Store Apps with JavaScript
http://msdn.microsoft.com/en-us/library/windows/apps/br229565.aspx
Create Your First App:
http://msdn.microsoft.com/en-us/library/windows/apps/br211385.aspx
What’s New in 8.1:
http://msdn.microsoft.com/en-us/library/windows/apps/bg182410
Samples:
http://code.msdn.microsoft.com/windowsapps
Microsoft Virtual Academy:
http://www.microsoftvirtualacademy.com/training-courses/developing-windowsstore-apps-with-html5-jump-start#fbid=lvD_xqBRi1j
18
Please Leave Feedback During Q&A
If you leave session
feedback and
provide contact
information, you
will be qualified for
a prize
Scan the QR code
to the right or go to
bit.ly/htf130415
19

More Related Content

More from Stacy Vicknair

Building Faster Horses: Taking Over An Existing Software Product
Building Faster Horses: Taking Over An Existing Software ProductBuilding Faster Horses: Taking Over An Existing Software Product
Building Faster Horses: Taking Over An Existing Software ProductStacy Vicknair
 
ASP.NET Routing Deep Dive
ASP.NET Routing Deep DiveASP.NET Routing Deep Dive
ASP.NET Routing Deep DiveStacy Vicknair
 
ASP.NET Routing Deep Dive
ASP.NET Routing Deep DiveASP.NET Routing Deep Dive
ASP.NET Routing Deep DiveStacy Vicknair
 
Asp.net routing with mvc deep dive
Asp.net routing with mvc deep diveAsp.net routing with mvc deep dive
Asp.net routing with mvc deep diveStacy Vicknair
 

More from Stacy Vicknair (6)

Building Faster Horses: Taking Over An Existing Software Product
Building Faster Horses: Taking Over An Existing Software ProductBuilding Faster Horses: Taking Over An Existing Software Product
Building Faster Horses: Taking Over An Existing Software Product
 
ASP.NET Routing Deep Dive
ASP.NET Routing Deep DiveASP.NET Routing Deep Dive
ASP.NET Routing Deep Dive
 
Git'in in 15
Git'in in 15Git'in in 15
Git'in in 15
 
Git'in on Windows
Git'in on WindowsGit'in on Windows
Git'in on Windows
 
ASP.NET Routing Deep Dive
ASP.NET Routing Deep DiveASP.NET Routing Deep Dive
ASP.NET Routing Deep Dive
 
Asp.net routing with mvc deep dive
Asp.net routing with mvc deep diveAsp.net routing with mvc deep dive
Asp.net routing with mvc deep dive
 

Recently uploaded

Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...AliaaTarek5
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 

Recently uploaded (20)

Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 

Developing Windows 8 Applications with HTML, CSS and JavaScript

  • 1. Developing Windows 8 Applications with HTML, CSS and JavaScript Stacy Vicknair Sparkhound 0
  • 2. Welcome to Houston TechFest Thank you for being a part of the 7th Annual Houston TechFest! • Please turn off all electronic devices or set them to vibrate. • If you must take a phone call, please do so in the lobby so as not to disturb others. • Thanks to our Diamond Sponsors: 1
  • 3. Information • Speaker presentation slides will be available at www.houstontechfest.org within a week • Don’t forget to complete the Bingo card to be eligible for door prizes 2
  • 4. ABOUT ME Stacy Vicknair, MVP Senior Development Consultant Blog http://www.wtfnext.com Toastmasters http://www.toastmasters.org http://www.batonrougespeaks.com Twitter: @svickn Email: stacy.vicknair@sparkhound.com
  • 5. “BE A HERO. GROW A BEARD.” The Sparkhound Foundation is sponsoring the growth of facial hair to raise Prostate Cancer Awareness. Through Septembeard we will raise funds for the research and treatment of prostate cancer. Want to join us? Learn more at Septembeard.org.
  • 6. Agenda • • • • • • • • • • Windows Store App Stack Why choose HTML, CSS, and JS? Basic Project Structure Adding Elements and Controls Promises Binding State Management Navigation What’s coming in Windows 8.1? Resources and Links 5
  • 8. Why use HTML, CSS and JS? • • • • You’re already well-versed in web development Leverage familiar client-side libraries You aren’t as familiar with XAML The app only deals with web-based services 7
  • 9. Basic Project Structure • package.appxmanifest – Set app-wide settings such as icons, tiles, capabilities, declarations • WinJS – Adds controls, promises, animations, etc. • HTML / CSS files – Act as the View • JavaScript files – Act as the Model / Controller 8
  • 10. Adding Elements and Controls • It’s HTML! – Basic Elements are the same ones you know already. • input, button, a… – Wiring events is normal too. • Element.addEventListener(type, listener[, useCapture]) • Element.onclick = function() {} • jQuery is an option, v2.0+ • More advanced controls included in the WinJS library. 9
  • 12. Promises • The gateway to asynchronous processing in Win8 HTML, CSS, and JS. • Can assign callbacks via .then() • Can wait on multiples with combine() 11
  • 13. DEMO • OOTB Blank Solution • Adding Elements and Controls • Promises 12
  • 14. Binding • Similar to Knockout bindings – BUT: Only one way binding • Allows binding of objects to the HTML view • To perform bindings: – Specify the element component bindings with datawin-bind • innerHtml • style.<stylename> • onclick – Use WinJS.Binding.processAll(element, model) 13
  • 15. Saving and Resuming State • From Windows.Storage.ApplicationData.current • Main types: – Temporary: No guarantee that this will last beyond the current session • temporaryFolder • sessionState – Local: Saved on Local Machine • localSettings • localFolder – Roaming: Associated with the Windows Live account • roamingSettings, roamingFolder 14
  • 16. DEMO • Binding • Saving and Resuming State • Navigation 15
  • 17. What coming in Windows 8.1? • • • • • Improved Performance Bundling to minimize app size More Windows Sizes Better ListViews / Drag and Drop support OOTB New controls http://msdn.microsoft.com/en-us/library/windows/apps/bg182410 16
  • 18. Agenda • • • • • • • • • • Windows Store App Stack Why choose HTML, CSS, and JS? Basic Project Structure Adding Elements and Controls Promises Binding State Management Navigation What’s coming in Windows 8.1? Resources and Links 17
  • 19. Resources and Links Get codeSHOW() off of the App Store! Developing Store Apps with JavaScript http://msdn.microsoft.com/en-us/library/windows/apps/br229565.aspx Create Your First App: http://msdn.microsoft.com/en-us/library/windows/apps/br211385.aspx What’s New in 8.1: http://msdn.microsoft.com/en-us/library/windows/apps/bg182410 Samples: http://code.msdn.microsoft.com/windowsapps Microsoft Virtual Academy: http://www.microsoftvirtualacademy.com/training-courses/developing-windowsstore-apps-with-html5-jump-start#fbid=lvD_xqBRi1j 18
  • 20. Please Leave Feedback During Q&A If you leave session feedback and provide contact information, you will be qualified for a prize Scan the QR code to the right or go to bit.ly/htf130415 19

Editor's Notes

  1. Why are we doing this? In honor of the Sparkies and Sparkie family members who have (or continue to fight) fought prostate cancerBackground:- The Sparkhound Foundation is our non-profit charitable giving organization- Prostate cancer is the second leading cause of death in American men.
  2. Why are we doing this? In honor of the Sparkies and Sparkie family members who have (or continue to fight) fought prostate cancerBackground:- The Sparkhound Foundation is our non-profit charitable giving organization- Prostate cancer is the second leading cause of death in American men.