32
New Mexico .NET User Group Windows Presentation Foundation Tim Huckaby CEO, InterKnowlogy Microsoft Regional Director & MVP

Windows Presentation Foundation

  • Upload
    dasan

  • View
    27

  • Download
    0

Embed Size (px)

DESCRIPTION

Windows Presentation Foundation. Tim Huckaby CEO, InterKnowlogy Microsoft Regional Director & MVP. About…. InterKnowlogy ( www.InterKnowlogy.com ) Tim Huckaby, CEO - ([email protected]) Custom App Dev / Consulting / Software & Systems Engineering Firm headquartered in Carlsbad, CA - PowerPoint PPT Presentation

Citation preview

Page 1: Windows Presentation Foundation

New Mexico .NET User Group

Windows Presentation Foundation

Tim HuckabyCEO, InterKnowlogy

Microsoft Regional Director & MVP

Page 2: Windows Presentation Foundation

About…• InterKnowlogy (www.InterKnowlogy.com)

• Tim Huckaby, CEO - ([email protected])• Custom App Dev / Consulting / Software & Systems Engineering

Firm headquartered in Carlsbad, CA• Microsoft Gold Partner managed in SoCal and Redmond• Design, Architect, Build and Deploy enterprise class applications • Industry Experts:

• 90% of the company is published• Microsoft .NET Application development for 5+ years!• Microsoft .NET Smart Client pioneers / industry leaders• Information Worker Solutions• Integration / Messaging, B2B / B2C, Wireless / Mobility • Microsoft BizTalk Web Services, Microsoft Active Directory, Security, SSO,

Authorization, Authentication• Solutions on the emerging Microsoft servers• Largest Client: Microsoft

Page 3: Windows Presentation Foundation

Agenda

• WPF & XAML• Intro to Advanced in an hour….• Smart Client Technology Roadmap• Demos

Page 4: Windows Presentation Foundation

New Mexico .NET User Group

Web vs. WPF – NY Times Reader

Page 5: Windows Presentation Foundation

What the hell is XAML?

• Separates the front-end from the back-end• Simple declarative programming language

suitable for constructing and initializing .NET Objects.

• Usually the most concise way to represent user interfaces (or other hierarchies of objects)

• Doesn’t need a compile to render• The language that almost all WPF related

tools emit

Page 6: Windows Presentation Foundation

New Mexico .NET User Group

Gratuitous XAML Demos

Page 7: Windows Presentation Foundation

WPF – how does it work?

• Built on Top of Direct 3D• Converted to 3D triangles, textures and

other Direct3D objects & then rendered by hardware

• Benefits of hardware acceleration & perf due to work being off-loaded to GPUs (unlike GDI based systems)

• Ensures the maximum benefit of new hardware and drivers

• Software rendering pipeline as fallback

Page 8: Windows Presentation Foundation

Why WPF?

• The GDI & USER subsystems were introduced in Windows 1.0 in 1985

• OpenGL – Early 90s• DirectX – 1995

• Goal: Overcome the limits of GDI+ & USER with the productivity of Windows Forms

Page 9: Windows Presentation Foundation

New Mexico .NET User Group

Hello World with VS.NET Orcas B2

Page 10: Windows Presentation Foundation

WPF VisionWPF Vision

• Unified approach to UI, Documents, and Media• Integration as part of

development and experience• Integrated, vector-based

composition engine• Utilizing the power of the PC

throughout the graphics stack• Declarative programming

• Bringing designers directly into application development

• Ease of deployment• Allowing administrators to deploy

and manage applications securely

Page 11: Windows Presentation Foundation

WPF FAQ1. Does WPF enable me to do something I couldn’t

have done before?• No. Unless you factor in time & money…

2. Is DirectX dead?• No. It is more applicable to advanced 3D developers writing hard-core

“twitch” games.3. Are Winforms dead?

• No. …but it will not be advanced; the last version was 2.0 in .NET 2005.• WPF / Winforms Bastardization• Windows 98 Supports WinForms

4. Does WPF run better on Vista than on XP?• Yes.• 3D objects only get anti-aliasing on Windows Vista or Later• Non-rectangular windows only get hardware acceleration on Vista. • Vista has a driver model that helps with resource contention

Page 12: Windows Presentation Foundation

Best way to deliver superior user experiences• Improve usability, productivity, and

satisfaction• Increase developer productivity• Expand product relevance

Sets new bar for a modern client platform• Unified developer platform for

applications, documents, and graphics• Integrated, vector-based composition

engine• Support for declarative and procedural

programming

Page 13: Windows Presentation Foundation

New Mexico .NET User Group

Hello World WPF with Expression Designer and Expression Blend

Page 14: Windows Presentation Foundation

New Mexico .NET User Group

The Scripps Research Institute

Reminder: Start the TSRIDEMOSVR vpc

Page 15: Windows Presentation Foundation
Page 16: Windows Presentation Foundation

New Mexico .NET User Group

C-MEA Smart Client Front-end for

SharePoint 2007

Tim HuckabyCEO – InterKnowlogy

Microsoft Regional DirectorMicrosoft MVP – .NET

Page 17: Windows Presentation Foundation

Marketing Highlights

• Demoed in the Steve Ballmer Keynote at the Vista / Office 2007 Launch in NY

• Featured as a technical article in .NET Developers Journal Magazine

• BioIT Alliance • Accelerate technology solutions within the Life Science Industry• InterKnowlogy is a founding member of the BioIT Alliance.

• Video for Microsoft WPC & MGX Launches• Video for Microsoft Vista / Office Launch• MSDN Channel 9 Interview• Highlighted on .NET Rocks! Interview• Highlighted in TechEd Keynote sessions• Demoed at WPC Keynotes

Media Highlights:TRSI Media Coverage.docx - Shortcut.lnk

Page 18: Windows Presentation Foundation

The Peter Kuhn Lab at The Scripps Research Institute

(TSRI)• Research Focus

• Early detection and therapy management of cancer patients

• Modulation of protein interactions for therapeutic intervention

• Projects• Cancer bioengineering partnership• Structural Proteomics of SARS

Page 19: Windows Presentation Foundation

The Problem• Laboratory Environment

• Research teams work in a distributed environment• Manual, paper notebooks and prone to error• Have stove pipe systems which capture data• Status management requires contacting the researcher directly

• Collaboration Issues• Data Recorded on scraps of paper then re-written in lab notebooks• Pasting gel/chromatogram pictures in notebooks• Too many crystal image files to keep track of & too big• Manually linking patient information experimental results• No way to electronically search for images

Page 20: Windows Presentation Foundation

The Solution• SharePoint 2007 Collaboration

• Proven collaborative solution with SharePoint 2007

• Data is stored within SPS hierarchy• Each Cancer / Sars Entity is a site

• Provides a secure searchable infrastructure but…

Page 21: Windows Presentation Foundation

C-ME• WPF Smart Client for SharePoint 2007

• Collaborative Client• 2D & 3D views at a molecular level• Leverage the collaborate environment of

SharePoint 2007• Provide data in the context of the project not in the

context of it’s storage• Allow users to drag and drop data into the

context of the project• Smart client then handles the display & annotations

of the underlying storage• Allow user’s to add ad-hoc information

Page 22: Windows Presentation Foundation

C-ME Architecture• Smart client for rich

visual experience and ease of finding information

• XML Web Service interfaces

• SharePoint 2007 for storing data, documents and Metadata

• No custom SQL structures

Windows Vista.NET 3.0

WPF Application

SharePoint 2007

Internet

Page 23: Windows Presentation Foundation

New Mexico .NET User Group

Tim HuckabyCEO – InterKnowlogy

Microsoft Regional DirectorMicrosoft MVP – .NET

C-ME – A .NET 3.0 Smart Client for SharePoint

2007

Page 24: Windows Presentation Foundation

Collaborative Molecular Environment

• Architectural Diagram

Custom 3DRendering

LibraryCustomBusiness

LayerLibrary

C-ME Windows Application

WPF

.NET Framework 3.0

WPF Smart Client Application

CustomSite

CreationWeb

Services

MOSSWeb

Services

MOSSWeb

Pages

MOSS Object Model

SharePoint 2007 Server

Launches

Consumes

(root) Research Site[Collaboration Portal]

ProjectSub-site

[Team Site]

1 1

MOSS Sites/Content Database

Site/Content Structure

Root EntityDocument Library

(.pdb files, etc.)

Entity Site Structure

∞Entity

Sub-site[Team Site]

AnnotationDocument Library

(contains context metadata)

AutomaticallyGenerate Team Sites

CollaborativeMolecularEnvironmentArchitecture Diagram

For more information, please contact Tim Huckaby at [email protected].

Page 25: Windows Presentation Foundation

Artifact Control

Artifact Viewer

Image Viewer PDB Viewer

Residue Control

Structure Control

Molecule

Atom Residue

Con

tain

sC

onta

ins

Con

tain

s

Con

tain

s

Con

tain

s

Contains

Inhe

rits

How the 3d WPF Works…

Page 26: Windows Presentation Foundation

3D with WPFCheck out the method level support for

Rotation

This is why you should have paid attention in high school calculus..

Page 27: Windows Presentation Foundation

New Mexico .NET User Group

Collective Molecular Environment

Page 28: Windows Presentation Foundation

The Future: 3D Collaborator Opens AutoCAD *.dwg Files

Natively

Page 29: Windows Presentation Foundation

Existing Prototype

• Technologies used• Rendering

• Autodesk DWF Toolkit (C++ library)• Custom DWF C++/CLI (Managed) wrapper• C# WPF 3D rendering

• User interface• Built using WPF• XAML skin

Page 30: Windows Presentation Foundation

• Interactive experiences for devices, PC & Mac platforms• Strict subset of Windows Presentation Foundation• Lightweight download• Programming model uses XAML + JScript• Access to all WPF tooling

<XAML> <Button Width="100px"> OK <Button.Background> LightBlue </Button.Background> </Button></XAML>

WPF-based Tools

Silverlight

Page 31: Windows Presentation Foundation

Where to go next• Windows Presentation Foundation

Unleashed (WPF)• by Adam Nathan, Daniel Lehenbauer

• Essential Windows Presentation Foundation (WPF)

• by Chris Anderson

Page 32: Windows Presentation Foundation

Tim Huckaby, InterKnowlogy

• More info on InterKnowlogy:• www.InterKnowlogy.com

• Contact me: Tim Huckaby• E-mail: [email protected]

or [email protected]• Phone: 760-930-0075 x201• Blog: http://blogs.InterKnowlogy.com/TimHuckaby

• About Tim Huckaby• Microsoft® Regional Director – Southern California• Microsoft® .NET Partner Advisory Council Founder / Member• Microsoft® MVP - .NET• Microsoft® Prescriptive Architecture Group Advisory Council• Microsoft Office® Developer Advisory Council• Microsoft® MSF advisory board member• INETA Speaker – International .NET Users Group Association• Windows and .NET Magazine Advisory Board Member• .NET Developers Journal Magazine Advisory Board Member• Author / Speaker