43
Graphic interface Radosław Osiński Technical Evangelist Microsoft

Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,

Graphic interfaceRadosław Osiński

Technical Evangelist

Microsoft

Page 2: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,

Lectures intro

• No labs this week

• Materials in English

• All materials will be published

• Topics WPF, UWP, WinForms, Windows API, UX

• Assessment based on labs – info about number of points on each lab

Page 3: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,

Current approach

• PC Application

• Web Application

• Mobile Application

Page 4: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,

Why creating desktop /mobile app instead web app?

• Internet access

• Equipment access• Memory usage

• Graphic usage

• User engagement - notifications directly to user device

Page 5: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,

Do you imagine use in browser:

• Photoshop

• AutoCAD

• Matlab

• Fortnite / Forza / Fallout

• Browser

Page 6: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,

WinFormsWindows

Forms

WPFWindows

PresentationFoundation

+XAML

eXtensibleApplication

MarkupLanguage

UWPUniversalWindowsPlatform

+XAML

OrJavaScript

Xamarin+

Xamarin Forms

1st

revolution!

2nd

revolution!3rd

revolution!

Page 7: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,

Windows Forms

If it is the oldest why to use that?

Better not ☺

But…

First you should understand background and be able to integrate with old applications

Second you may have to do something in old application.Be the person everyone can count on!

Page 8: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,

Why WinForms are not good enough?

• Created when computers were not so powerful

• Not adopted to new graphics cards

• Created when only one screen resolution was used

Solution:

1st revolution – screed diversity!

Page 9: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,

• Created when only one type of the device was created

Now we have:PCTabletsIoT DevicesPhonesHoloLensXboxSurface Hub

Write once use on many devices!

Why WPF is not good enough?

Solution:

2nd revolution – devices diversity!

Page 10: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,

Why UWP is not good enough?

• Microsoft is not alone

• Other technologies are important too!• Android

• iOS

Solution:

3rd revolution – platforms diversity!

Page 11: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,

Maybe other way around?

Progressive Web Apps

+

Responsive Design

From web development to native clients

So maybe everything this way…

…platform specific approach

Page 12: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,

Thinking outside of the box

Custom API

Office 365

Azure AD and Azure AD B2C

Page 13: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,

.NET world for Windows 10

Page 14: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,
Page 15: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,
Page 16: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,

Lets look into UWP capabilities

Page 17: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,

Camera and objects recognition

Page 18: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,
Page 19: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,

Speech2Text and Text2Speach

Page 20: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,
Page 21: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,

Pen and Ink

• Drawing• Hand writing recognition

Page 22: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,
Page 23: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,

Mixed reality

Page 24: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,
Page 25: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,
Page 26: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,
Page 27: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,
Page 28: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,

Sensors

IoT Devices with Azure IoT Hub

AccelerometerMagnetometerGyrometerAmbient lightHall effectWi-Fi SAR

Page 29: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,
Page 30: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,

Semantic zoom

Page 31: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,
Page 32: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,

IR camera

Page 33: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,

Accessibility

Page 34: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,

UWP Community Toolkit

https://www.microsoft.com/en-us/p/windows-community-toolkit-sample-app/9nblggh4tlcq?rtc=1&activetab=pivot:overviewtab

Page 35: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,
Page 36: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,

Windows community toolkit demo

Page 37: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,

Easy template

Page 38: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,
Page 39: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,

Template studio demo

Page 40: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,

What if I have old application?

Page 41: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,

Option 1: Migrate

Bridge to the Universal Windows Platform

At this point your app has

Modern installation and deployment

Activation via Tiles, file types or URI protocols

App identity, resulting in access to more UWP APIs

Page 42: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,
Page 43: Radosław Osińskiaszklarp/archiwum/... · Lectures intro •No labs this week •Materials in English •All materials will be published •Topics WPF, UWP, WinForms, Windows API,

Using UWP controls inside WPF and WinForms

Option 2: Integrate

XAML Island