SlideShare a Scribd company logo
1 of 24
WPF Architecture
What Is User Experience?
User Experience in Software?

Windows Vista

Ease of Use
Learn ability
Performance
Reliability
Security
Optimized form factors
Legibility / Readability
Relevance / Contextualization

Office 2007

Measuring UX ROI
(end user behaviors / benefits)

Success
Productivity
Retention
Comprehension
Conversion
Satisfaction
Excitement
Repeat Use

Richness
Graphics & Media
Data Visualization
Higher Fidelity Information
Globalization
Accessibility
Hardware & Printing
Integration
.NET At The Core
Windows Presentation Foundation

A productive, unified approach to UI,
media and documents to deliver
unmatched user experience
Designer-Developer Productivity
•
•
•

Designers design

Microsoft Tools for Designers &
Developers

With XAML designers &
Declarative Programming through
XAML
developers can streamline
their collaboration
Third Party Tools (e.g. Aurora by
Mobiform, ZAM 3D by Electric Rain)
Developers add business logic
WPF Features
• Powerful Layout and Control Features of WPF
Applications
• Advanced Graphics and Text Features of WPF
Applications
• WPF Document Features
Powerful Layout and Control Features of
WPF Applications
•
•
•
•
•
•

Layout
Content Model
Lookless controls
Data binding
Styles
Triggers
Advanced Graphics and Text Features of
WPF Applications
•
•
•
•
•

Controls support rich content
Vector graphics based engine
Image transformation: rotation, scale, etc.
Bitmap effects: shadow, blur, reflection, etc.
Animation and Video
WPF Document Features
•

Document Types:
– Fixed
– Flow

•

Document Controls and Text Layout:
–
–
–
–
–

•

DocumentViewer
FlowDocumentReader
FlowDocumentPageViewer
FlowDocumentScrollViewer
TextBlock

Document Packaging:
– System.IO.Packaging: ZipPackage
– XML Paper Specification (XPS)
WPF Architectural Sketch
Windows Presentation Foundation
Services
• Base Services:
– XAML, Property System, Input & Eventing, Accessibility

• Media Services:
– 2D, 3D, Audio, Video, Text, Imaging, Animation, Effects,
Composition Engine

• Document Services:
– XPS Documents, Open Packaging Conventions

• User Interface Services:
– Application Services, Deployment, Controls, Layout, Data
Binding
WPF architecture
PresentationFramework
PresentationCore
Common Language Runtime
milcore
User32

DirectX
Kernel
Bases classes
•
•
•
•
•
•

System.Threading.DispatcherObject
System.Windows.DependencyObject
System.Windows.Media.Visual
System.Windows.UIElement
System.Windows.FrameworkElement
System.Windows.Controls.Control
Diagram of Win32 rendering sequence
1 Invalidate

Application
3
GDI+ or GDI32

Graphics Card
Frame Buffer
For Screen

WM_PAINT

2

Windows

Repaint requests sent by
OS whenever window
invalidated

Image data only retained for
as long as it remains visible on
screen
Diagram of WPF rendering sequence
Application
Visual
objects

WPF

Graphics Card
Frame Buffer
For Screen
Intelligent Redrawing

WM_PAINT

Windows
What Is XAML?
• New declarative language for creating application user
interfaces
• XML-based representation of the object model
• Every XAML tag corresponds directly to a .NET
Framework class
• Each XAML file includes the following elements:
–
–
–
–
–

Root element
http://schemas.microsoft.com/winfo/2006/xaml/presentation and
http://'schemas.microsoft.com/winfx/2006/xaml
Properties
Name property
Simple XAML file
<Canvas
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas. microsoft, com/winfx/2006/xaml“
>
<Button Name ="MyButton" Background ="Blue">Hello World!</Button>

</Canvas>
Creating a Windows Presentation
Foundation Application: code-behind
<Canvas
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
x:Class="My Namespace. MyCanvasCode">
<Button Click="Button_Click">Hello World!</Button>
</Canvas>
namespace MyNamespace
{
public partial class MyCanvasCode : Canvas
{

void Button_Click(object sender, RoutedEventArgs e)
{
Button b = e.Source as Button;
b.Background = Brushes.Red;
}
}

}
Using inline code
<Canvas
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
>
<Button Name="buttonl" Click="Clicked">Hello World!</Button>
<x:Code>
<![CDATA[
void Clicked(object sender, RoutedEventArgs e)
{
buttonl.Background = Brushes.Red;
}
]]>
</x:Code>
</Canvas>
Visual Tree
Stack
Panel

<StackPanel>

Stack
Panel

Stack
Panel

Stack
Panel

Border

Classic
BD

Classic
BD

Content
Pres

Scrol
Vwr

Content
Pres

Grid

Text
Block

<Label>user name:</Label>
<TextBox />
<Button Click="OnClick">
OK
</Button>

Text
Block
Scroll
CPres
Text
Block

Stack
Panel

ScrBar
Min

</StackPanel>

ScrBar
Min

Adorn
Layer

Label

TextBox

Button
Logical Tree
<DockPanel>
<LlstBox>

<ListBoxItem>Dog</ListBoxItem>
<ListBoxItem>Cat</ListBoxltem>
<ListBoxltem>Fish</ListBoxltem>
</ListBox>
<Button Click="OnClick">OK</Button>

</DockPanel>

ListBoxItem
(Dog)

DockPanel
ListBox
ListBoxItem
(Cat)

Button
ListBoxItem
(Fish)
Helper classes
• VisualTreeHelper:
– GetParent
– GetChild
– HitTest

• LogicalTreeHelper
Questions?

More Related Content

What's hot

Building solutions with microsoft virtualisation
Building solutions with microsoft virtualisationBuilding solutions with microsoft virtualisation
Building solutions with microsoft virtualisationRonnie Isherwood
 
xRM Twilight Presentation
xRM Twilight PresentationxRM Twilight Presentation
xRM Twilight PresentationIntergen
 
Silverlight Framework Architecture
Silverlight Framework ArchitectureSilverlight Framework Architecture
Silverlight Framework ArchitectureAshok
 
Soyatec mdday2010
Soyatec mdday2010Soyatec mdday2010
Soyatec mdday2010MD DAY
 
Introduction to silverlight control 4
Introduction to silverlight control 4Introduction to silverlight control 4
Introduction to silverlight control 4msarangam
 
Rapidly Construct LOB Applications with UWP and Visual Studio 2017
Rapidly Construct LOB Applications with UWP and Visual Studio 2017Rapidly Construct LOB Applications with UWP and Visual Studio 2017
Rapidly Construct LOB Applications with UWP and Visual Studio 2017Windows Developer
 
Building Windows8 Metro Applications
Building Windows8 Metro ApplicationsBuilding Windows8 Metro Applications
Building Windows8 Metro ApplicationsAbhishek Sur
 
Enterprise Desktop Architecture 5 Year View
Enterprise Desktop Architecture   5 Year ViewEnterprise Desktop Architecture   5 Year View
Enterprise Desktop Architecture 5 Year ViewJeff Fisher
 
Ph Pgg Frontend
Ph Pgg FrontendPh Pgg Frontend
Ph Pgg Frontendbramveen
 
Microsoft Windows Phone 7 Platform [IndicThreads Mobile Application Developm...
Microsoft Windows Phone 7 Platform  [IndicThreads Mobile Application Developm...Microsoft Windows Phone 7 Platform  [IndicThreads Mobile Application Developm...
Microsoft Windows Phone 7 Platform [IndicThreads Mobile Application Developm...IndicThreads
 
Windows Accelerate IT Pro Bootcamp: Windows ToGo (Module 3 of 8)
Windows Accelerate IT Pro Bootcamp: Windows ToGo (Module 3 of 8)Windows Accelerate IT Pro Bootcamp: Windows ToGo (Module 3 of 8)
Windows Accelerate IT Pro Bootcamp: Windows ToGo (Module 3 of 8)Intergen
 
Login vsi datasheet new
Login vsi datasheet newLogin vsi datasheet new
Login vsi datasheet newMichael Wang
 
Microsoft Silverlight - An Introduction
Microsoft Silverlight - An IntroductionMicrosoft Silverlight - An Introduction
Microsoft Silverlight - An IntroductionMohammad Elsheimy
 
Windows Phone7 Development
Windows Phone7 DevelopmentWindows Phone7 Development
Windows Phone7 DevelopmentDanish Mehraj
 
Windows Accelerate IT Pro Bootcamp: UE-V (Module 5 of 8)
Windows Accelerate IT Pro Bootcamp: UE-V (Module 5 of 8)Windows Accelerate IT Pro Bootcamp: UE-V (Module 5 of 8)
Windows Accelerate IT Pro Bootcamp: UE-V (Module 5 of 8)Intergen
 
Windows phone-7- Introduction
Windows phone-7- IntroductionWindows phone-7- Introduction
Windows phone-7- IntroductionChandra Singh
 

What's hot (19)

Building solutions with microsoft virtualisation
Building solutions with microsoft virtualisationBuilding solutions with microsoft virtualisation
Building solutions with microsoft virtualisation
 
xRM Twilight Presentation
xRM Twilight PresentationxRM Twilight Presentation
xRM Twilight Presentation
 
Silverlight Framework Architecture
Silverlight Framework ArchitectureSilverlight Framework Architecture
Silverlight Framework Architecture
 
Soyatec mdday2010
Soyatec mdday2010Soyatec mdday2010
Soyatec mdday2010
 
Introduction to silverlight control 4
Introduction to silverlight control 4Introduction to silverlight control 4
Introduction to silverlight control 4
 
Rapidly Construct LOB Applications with UWP and Visual Studio 2017
Rapidly Construct LOB Applications with UWP and Visual Studio 2017Rapidly Construct LOB Applications with UWP and Visual Studio 2017
Rapidly Construct LOB Applications with UWP and Visual Studio 2017
 
Building Windows8 Metro Applications
Building Windows8 Metro ApplicationsBuilding Windows8 Metro Applications
Building Windows8 Metro Applications
 
Enterprise Desktop Architecture 5 Year View
Enterprise Desktop Architecture   5 Year ViewEnterprise Desktop Architecture   5 Year View
Enterprise Desktop Architecture 5 Year View
 
Ph Pgg Frontend
Ph Pgg FrontendPh Pgg Frontend
Ph Pgg Frontend
 
1
11
1
 
Microsoft Windows Phone 7 Platform [IndicThreads Mobile Application Developm...
Microsoft Windows Phone 7 Platform  [IndicThreads Mobile Application Developm...Microsoft Windows Phone 7 Platform  [IndicThreads Mobile Application Developm...
Microsoft Windows Phone 7 Platform [IndicThreads Mobile Application Developm...
 
SilverLight Overview
SilverLight OverviewSilverLight Overview
SilverLight Overview
 
Windows Accelerate IT Pro Bootcamp: Windows ToGo (Module 3 of 8)
Windows Accelerate IT Pro Bootcamp: Windows ToGo (Module 3 of 8)Windows Accelerate IT Pro Bootcamp: Windows ToGo (Module 3 of 8)
Windows Accelerate IT Pro Bootcamp: Windows ToGo (Module 3 of 8)
 
Silverlight vs WPF
Silverlight vs WPFSilverlight vs WPF
Silverlight vs WPF
 
Login vsi datasheet new
Login vsi datasheet newLogin vsi datasheet new
Login vsi datasheet new
 
Microsoft Silverlight - An Introduction
Microsoft Silverlight - An IntroductionMicrosoft Silverlight - An Introduction
Microsoft Silverlight - An Introduction
 
Windows Phone7 Development
Windows Phone7 DevelopmentWindows Phone7 Development
Windows Phone7 Development
 
Windows Accelerate IT Pro Bootcamp: UE-V (Module 5 of 8)
Windows Accelerate IT Pro Bootcamp: UE-V (Module 5 of 8)Windows Accelerate IT Pro Bootcamp: UE-V (Module 5 of 8)
Windows Accelerate IT Pro Bootcamp: UE-V (Module 5 of 8)
 
Windows phone-7- Introduction
Windows phone-7- IntroductionWindows phone-7- Introduction
Windows phone-7- Introduction
 

Viewers also liked

01 service retirement assessment-CMMAAP-PMI
01 service retirement assessment-CMMAAP-PMI01 service retirement assessment-CMMAAP-PMI
01 service retirement assessment-CMMAAP-PMImission_vishvas
 
Pmi pmp-resume template2
Pmi pmp-resume template2Pmi pmp-resume template2
Pmi pmp-resume template2mission_vishvas
 
Mission vishvas-resume template-13
Mission vishvas-resume template-13Mission vishvas-resume template-13
Mission vishvas-resume template-13mission_vishvas
 
Pmi pmp-resume template-6
Pmi pmp-resume template-6Pmi pmp-resume template-6
Pmi pmp-resume template-6mission_vishvas
 
Pmi pmbok-resume template-18
Pmi pmbok-resume template-18Pmi pmbok-resume template-18
Pmi pmbok-resume template-18mission_vishvas
 
Mission vishvas-resume template-16
Mission vishvas-resume template-16Mission vishvas-resume template-16
Mission vishvas-resume template-16mission_vishvas
 
Pmi pmp-resume template-14
Pmi pmp-resume template-14Pmi pmp-resume template-14
Pmi pmp-resume template-14mission_vishvas
 
Pmp pmi-resume template1
Pmp pmi-resume template1Pmp pmi-resume template1
Pmp pmi-resume template1mission_vishvas
 
Cmmaao pmi-resume template-18-cmmaao-pmi
Cmmaao pmi-resume template-18-cmmaao-pmiCmmaao pmi-resume template-18-cmmaao-pmi
Cmmaao pmi-resume template-18-cmmaao-pmimission_vishvas
 
Cmmaao pmi-project plan guide
Cmmaao pmi-project plan guideCmmaao pmi-project plan guide
Cmmaao pmi-project plan guidemission_vishvas
 
Cmmaao pmi-resume template-8
Cmmaao pmi-resume template-8Cmmaao pmi-resume template-8
Cmmaao pmi-resume template-8mission_vishvas
 
Cmmaao pmi-resume template-5
Cmmaao pmi-resume template-5Cmmaao pmi-resume template-5
Cmmaao pmi-resume template-5mission_vishvas
 
Cmmaao pmi-project communication plan v1c
Cmmaao pmi-project communication plan v1cCmmaao pmi-project communication plan v1c
Cmmaao pmi-project communication plan v1cmission_vishvas
 
Bill gates Biograph (Operating System Version)
Bill gates Biograph (Operating System Version)Bill gates Biograph (Operating System Version)
Bill gates Biograph (Operating System Version)Leonardo De Araujo I
 
Cmmaao pert-analysis-pmi-pmp (1)
Cmmaao pert-analysis-pmi-pmp (1)Cmmaao pert-analysis-pmi-pmp (1)
Cmmaao pert-analysis-pmi-pmp (1)mission_vishvas
 
Cmmaao timesheet-totals-pmi-pmp
Cmmaao timesheet-totals-pmi-pmpCmmaao timesheet-totals-pmi-pmp
Cmmaao timesheet-totals-pmi-pmpmission_vishvas
 
Vishvas resume template-10
Vishvas resume template-10Vishvas resume template-10
Vishvas resume template-10mission_vishvas
 

Viewers also liked (20)

01 service retirement assessment-CMMAAP-PMI
01 service retirement assessment-CMMAAP-PMI01 service retirement assessment-CMMAAP-PMI
01 service retirement assessment-CMMAAP-PMI
 
Pmi pmp-resume template2
Pmi pmp-resume template2Pmi pmp-resume template2
Pmi pmp-resume template2
 
Mission vishvas-resume template-13
Mission vishvas-resume template-13Mission vishvas-resume template-13
Mission vishvas-resume template-13
 
Pvc mould 2
Pvc mould 2Pvc mould 2
Pvc mould 2
 
Pmi pmp-resume template-6
Pmi pmp-resume template-6Pmi pmp-resume template-6
Pmi pmp-resume template-6
 
Pmi pmbok-resume template-18
Pmi pmbok-resume template-18Pmi pmbok-resume template-18
Pmi pmbok-resume template-18
 
Mission vishvas-resume template-16
Mission vishvas-resume template-16Mission vishvas-resume template-16
Mission vishvas-resume template-16
 
Resume template 17
Resume template 17Resume template 17
Resume template 17
 
Pmi pmp-resume template-14
Pmi pmp-resume template-14Pmi pmp-resume template-14
Pmi pmp-resume template-14
 
Pmp pmi-resume template1
Pmp pmi-resume template1Pmp pmi-resume template1
Pmp pmi-resume template1
 
Cmmaao pmi-resume template-18-cmmaao-pmi
Cmmaao pmi-resume template-18-cmmaao-pmiCmmaao pmi-resume template-18-cmmaao-pmi
Cmmaao pmi-resume template-18-cmmaao-pmi
 
Cmmaao pmi-project plan guide
Cmmaao pmi-project plan guideCmmaao pmi-project plan guide
Cmmaao pmi-project plan guide
 
Cmmaao pmi-resume template-8
Cmmaao pmi-resume template-8Cmmaao pmi-resume template-8
Cmmaao pmi-resume template-8
 
Cmmaao pmi-resume template-5
Cmmaao pmi-resume template-5Cmmaao pmi-resume template-5
Cmmaao pmi-resume template-5
 
Cmmaao pmi-project communication plan v1c
Cmmaao pmi-project communication plan v1cCmmaao pmi-project communication plan v1c
Cmmaao pmi-project communication plan v1c
 
Resume template 2
Resume template 2Resume template 2
Resume template 2
 
Bill gates Biograph (Operating System Version)
Bill gates Biograph (Operating System Version)Bill gates Biograph (Operating System Version)
Bill gates Biograph (Operating System Version)
 
Cmmaao pert-analysis-pmi-pmp (1)
Cmmaao pert-analysis-pmi-pmp (1)Cmmaao pert-analysis-pmi-pmp (1)
Cmmaao pert-analysis-pmi-pmp (1)
 
Cmmaao timesheet-totals-pmi-pmp
Cmmaao timesheet-totals-pmi-pmpCmmaao timesheet-totals-pmi-pmp
Cmmaao timesheet-totals-pmi-pmp
 
Vishvas resume template-10
Vishvas resume template-10Vishvas resume template-10
Vishvas resume template-10
 

Similar to Wpf architecture

Client Continuum Dec Fy09
Client Continuum Dec Fy09Client Continuum Dec Fy09
Client Continuum Dec Fy09Martha Rotter
 
Modernizing Desktop Apps on Windows 10
Modernizing Desktop Apps on Windows 10Modernizing Desktop Apps on Windows 10
Modernizing Desktop Apps on Windows 10Windows Developer
 
Modern C&C Systems, Using New Technologies
Modern C&C Systems, Using New TechnologiesModern C&C Systems, Using New Technologies
Modern C&C Systems, Using New TechnologiesTamir Khason
 
Creativity Day Milano 27 Febbraio Milano
Creativity Day Milano 27 Febbraio MilanoCreativity Day Milano 27 Febbraio Milano
Creativity Day Milano 27 Febbraio Milanoroberto.design
 
Presentation design - key concepts and approaches for designing your deskto...
Presentation   design - key concepts and approaches for designing your deskto...Presentation   design - key concepts and approaches for designing your deskto...
Presentation design - key concepts and approaches for designing your deskto...xKinAnx
 
silverlight1.pptx
silverlight1.pptxsilverlight1.pptx
silverlight1.pptxAltafSMT
 
NexGen Software Inc
NexGen Software IncNexGen Software Inc
NexGen Software Incpervinder
 
Silver Light for every one by Subodh
Silver Light for every one by SubodhSilver Light for every one by Subodh
Silver Light for every one by SubodhSubodh Pushpak
 
Foundry Management System Desktop Application
Foundry Management System Desktop Application Foundry Management System Desktop Application
Foundry Management System Desktop Application Dharmendra Sid
 
History of silverlight versions and its features
History of silverlight versions and its featuresHistory of silverlight versions and its features
History of silverlight versions and its featuresDiya Singh
 
Microsoft Azure : Hey ITPRo's Meet Azure .. .again!
Microsoft Azure : Hey ITPRo's Meet Azure .. .again!Microsoft Azure : Hey ITPRo's Meet Azure .. .again!
Microsoft Azure : Hey ITPRo's Meet Azure .. .again!Mike Martin
 
azure track -03- it pros meet azure - again
azure track -03- it pros meet azure - againazure track -03- it pros meet azure - again
azure track -03- it pros meet azure - againITProceed
 
Integra Micro Software Services (P) Ltd. - Imaging Expertise
Integra Micro Software Services (P) Ltd. - Imaging ExpertiseIntegra Micro Software Services (P) Ltd. - Imaging Expertise
Integra Micro Software Services (P) Ltd. - Imaging Expertisesreesinbox
 
Anti key logging and real-time encrypting software | keystrokes encrypting so...
Anti key logging and real-time encrypting software | keystrokes encrypting so...Anti key logging and real-time encrypting software | keystrokes encrypting so...
Anti key logging and real-time encrypting software | keystrokes encrypting so...Mike Taylor
 
Crossware-Introduction_AmitDhagat-reduced.pdf
Crossware-Introduction_AmitDhagat-reduced.pdfCrossware-Introduction_AmitDhagat-reduced.pdf
Crossware-Introduction_AmitDhagat-reduced.pdfv89wytwpyn
 

Similar to Wpf architecture (20)

Client Continuum Dec Fy09
Client Continuum Dec Fy09Client Continuum Dec Fy09
Client Continuum Dec Fy09
 
An Overview Of Wpf
An Overview Of WpfAn Overview Of Wpf
An Overview Of Wpf
 
Modernizing Desktop Apps on Windows 10
Modernizing Desktop Apps on Windows 10Modernizing Desktop Apps on Windows 10
Modernizing Desktop Apps on Windows 10
 
Modern C&C Systems, Using New Technologies
Modern C&C Systems, Using New TechnologiesModern C&C Systems, Using New Technologies
Modern C&C Systems, Using New Technologies
 
WPF Meets Applications
WPF Meets ApplicationsWPF Meets Applications
WPF Meets Applications
 
WPF
WPFWPF
WPF
 
Creativity Day Milano 27 Febbraio Milano
Creativity Day Milano 27 Febbraio MilanoCreativity Day Milano 27 Febbraio Milano
Creativity Day Milano 27 Febbraio Milano
 
Presentation design - key concepts and approaches for designing your deskto...
Presentation   design - key concepts and approaches for designing your deskto...Presentation   design - key concepts and approaches for designing your deskto...
Presentation design - key concepts and approaches for designing your deskto...
 
Dot Net Overview
Dot Net OverviewDot Net Overview
Dot Net Overview
 
silverlight1.pptx
silverlight1.pptxsilverlight1.pptx
silverlight1.pptx
 
NexGen Software Inc
NexGen Software IncNexGen Software Inc
NexGen Software Inc
 
Silver Light for every one by Subodh
Silver Light for every one by SubodhSilver Light for every one by Subodh
Silver Light for every one by Subodh
 
Foundry Management System Desktop Application
Foundry Management System Desktop Application Foundry Management System Desktop Application
Foundry Management System Desktop Application
 
History of silverlight versions and its features
History of silverlight versions and its featuresHistory of silverlight versions and its features
History of silverlight versions and its features
 
Bcit win8 ws2012 session
Bcit win8 ws2012 sessionBcit win8 ws2012 session
Bcit win8 ws2012 session
 
Microsoft Azure : Hey ITPRo's Meet Azure .. .again!
Microsoft Azure : Hey ITPRo's Meet Azure .. .again!Microsoft Azure : Hey ITPRo's Meet Azure .. .again!
Microsoft Azure : Hey ITPRo's Meet Azure .. .again!
 
azure track -03- it pros meet azure - again
azure track -03- it pros meet azure - againazure track -03- it pros meet azure - again
azure track -03- it pros meet azure - again
 
Integra Micro Software Services (P) Ltd. - Imaging Expertise
Integra Micro Software Services (P) Ltd. - Imaging ExpertiseIntegra Micro Software Services (P) Ltd. - Imaging Expertise
Integra Micro Software Services (P) Ltd. - Imaging Expertise
 
Anti key logging and real-time encrypting software | keystrokes encrypting so...
Anti key logging and real-time encrypting software | keystrokes encrypting so...Anti key logging and real-time encrypting software | keystrokes encrypting so...
Anti key logging and real-time encrypting software | keystrokes encrypting so...
 
Crossware-Introduction_AmitDhagat-reduced.pdf
Crossware-Introduction_AmitDhagat-reduced.pdfCrossware-Introduction_AmitDhagat-reduced.pdf
Crossware-Introduction_AmitDhagat-reduced.pdf
 

Recently uploaded

Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
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
 
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
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
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
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
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
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????blackmambaettijean
 
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
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
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
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 

Recently uploaded (20)

Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
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
 
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
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
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...
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
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
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????
 
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
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
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
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 

Wpf architecture

Editor's Notes

  1. User experience is more than “looks”. User experience represents the overall interaction process of the user with an object. This interaction provides the user with an added value benefit. In this case the benefit that both tools offer is “opening a can”. However it is evident that the can opener will provide the user with a better overall user experience on obtaining the benefit. It is more secure, easier to use and can achieve the benefit faster than the knife. Let’s take this example even further. What is the difference between 2 cars - a 10K car and a 40K BMW? Both take you from point A to point B. There’s a world of difference. For one, the BMW has a much superior user experience (styling, handling, performance, etc.) In addition, notice that a BMW offers its owners an emotional connection, a “pride of ownership.” This gives BMW a unique brand in the eyes of its owners, and to the millions of potential owners who dream of buying this car some day! This shows us that user experience has tremendous business value – ability to differentiate products, create brand awareness, and customer satisfaction.
  2. We say earlier how user experience is so common-place in consumer goods. Yet, when it comes to software, we are happy to live with “good enough” experiences. When was the last time you had a very satisfying experience with your software, where you thought to yourself “I Love my Software.” Is this because user experience in software does NOT matter? Microsoft firmly believes that user experience in software does matter. Even with our own products, such as Windows Vista and Microsoft Office 2007, Microsoft is delivering software with amazing user experience. User Experience (UX) matters because it helps end-users use products in an easy way (easy to use, relevant, secure, etc.). The things that make a software have a good UX is richness, data viz, globalization, accessibility, etc. UX can be easily measured based on success of usage, productivity, retention, comprehension, and so on.
  3. In 2001, we introduced .NET Framework. In Nov 2005, we released .NET Framework 2.0. Yet, there was a need to offer our customers additional functionality, such as better user experience in software and workflow. With Windows Vista, we are introducing Microsoft® .NET Framework 3.0 (formerly named WinFX). .NET Framework 3.0 builds upon .NET Framework 2.0, with additional capabilities, such as Windows Presentation Foundation (WPF), Windows Communication Foundation (WCF), Windows Workflow Foundation (WF), and “Infocard.”
  4. Windows Presentation Foundation (WPF) is a productive, unified approach to UI, Media, and Documents that you can use to deliver unmatched user experiences to your customers.
  5. If user experience matters, design matters. If design matters, designers matter. If designers matter, we need to make designers first class citizens of the traditional software development process. Let’s talk about how Microsoft is unlocking Developer and Designer collaboration and is empowering them to create successful UX software applications. 1) Traditionally designers would “mockup” the graphic design for a software application. Then by any means possible designers would deliver this “looks” to the developer… they would use JPG images, PNGs, PSDs or even Powerpoint presentations to express the designer intention. Then the developer would receive this “static images” and would try to convert that into reality. If the designer created some “non standard” controls, the developer was forced to code in GDI+ or other complex technologies to create the control raising the time and budget to such level that it was simply better to take the decision of making the UI more “standard”. The developer trying to recreate the idea of the designer would deliver something like what is shown on the right side of the screen. As you can see it represents only a tiny bit of the original vision. 2) In order to enable the collaboration between developers and designers, Microsoft has created XAML. XAML is the format which integrates the development process and is the way for both developers and designers to access the functionalities of WPF. As you can see we have no middle man anymore. XAML is generated by the designer, XAML is consumed by the developer. Further more, the workflow is now two-way meaning that the development process can also start from the developer side who creates XAML and then delivers this XAML to the designer which can take it and style it or completely redesign its appearance. 3) As a brief sample this are the tools that enable this kind of process: On the designer side we have Expression and on the Developer side we have Visual Studio.