Download - Windows Presentation Foundation
![Page 1: Windows Presentation Foundation](https://reader033.vdocuments.mx/reader033/viewer/2022051219/5681632f550346895dd3ad13/html5/thumbnails/1.jpg)
New Mexico .NET User Group
Windows Presentation Foundation
Tim HuckabyCEO, InterKnowlogy
Microsoft Regional Director & MVP
![Page 2: Windows Presentation Foundation](https://reader033.vdocuments.mx/reader033/viewer/2022051219/5681632f550346895dd3ad13/html5/thumbnails/2.jpg)
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](https://reader033.vdocuments.mx/reader033/viewer/2022051219/5681632f550346895dd3ad13/html5/thumbnails/3.jpg)
Agenda
• WPF & XAML• Intro to Advanced in an hour….• Smart Client Technology Roadmap• Demos
![Page 4: Windows Presentation Foundation](https://reader033.vdocuments.mx/reader033/viewer/2022051219/5681632f550346895dd3ad13/html5/thumbnails/4.jpg)
New Mexico .NET User Group
Web vs. WPF – NY Times Reader
![Page 5: Windows Presentation Foundation](https://reader033.vdocuments.mx/reader033/viewer/2022051219/5681632f550346895dd3ad13/html5/thumbnails/5.jpg)
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](https://reader033.vdocuments.mx/reader033/viewer/2022051219/5681632f550346895dd3ad13/html5/thumbnails/6.jpg)
New Mexico .NET User Group
Gratuitous XAML Demos
![Page 7: Windows Presentation Foundation](https://reader033.vdocuments.mx/reader033/viewer/2022051219/5681632f550346895dd3ad13/html5/thumbnails/7.jpg)
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](https://reader033.vdocuments.mx/reader033/viewer/2022051219/5681632f550346895dd3ad13/html5/thumbnails/8.jpg)
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](https://reader033.vdocuments.mx/reader033/viewer/2022051219/5681632f550346895dd3ad13/html5/thumbnails/9.jpg)
New Mexico .NET User Group
Hello World with VS.NET Orcas B2
![Page 10: Windows Presentation Foundation](https://reader033.vdocuments.mx/reader033/viewer/2022051219/5681632f550346895dd3ad13/html5/thumbnails/10.jpg)
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](https://reader033.vdocuments.mx/reader033/viewer/2022051219/5681632f550346895dd3ad13/html5/thumbnails/11.jpg)
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](https://reader033.vdocuments.mx/reader033/viewer/2022051219/5681632f550346895dd3ad13/html5/thumbnails/12.jpg)
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](https://reader033.vdocuments.mx/reader033/viewer/2022051219/5681632f550346895dd3ad13/html5/thumbnails/13.jpg)
New Mexico .NET User Group
Hello World WPF with Expression Designer and Expression Blend
![Page 14: Windows Presentation Foundation](https://reader033.vdocuments.mx/reader033/viewer/2022051219/5681632f550346895dd3ad13/html5/thumbnails/14.jpg)
New Mexico .NET User Group
The Scripps Research Institute
Reminder: Start the TSRIDEMOSVR vpc
![Page 15: Windows Presentation Foundation](https://reader033.vdocuments.mx/reader033/viewer/2022051219/5681632f550346895dd3ad13/html5/thumbnails/15.jpg)
![Page 16: Windows Presentation Foundation](https://reader033.vdocuments.mx/reader033/viewer/2022051219/5681632f550346895dd3ad13/html5/thumbnails/16.jpg)
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](https://reader033.vdocuments.mx/reader033/viewer/2022051219/5681632f550346895dd3ad13/html5/thumbnails/17.jpg)
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](https://reader033.vdocuments.mx/reader033/viewer/2022051219/5681632f550346895dd3ad13/html5/thumbnails/18.jpg)
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](https://reader033.vdocuments.mx/reader033/viewer/2022051219/5681632f550346895dd3ad13/html5/thumbnails/19.jpg)
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](https://reader033.vdocuments.mx/reader033/viewer/2022051219/5681632f550346895dd3ad13/html5/thumbnails/20.jpg)
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](https://reader033.vdocuments.mx/reader033/viewer/2022051219/5681632f550346895dd3ad13/html5/thumbnails/21.jpg)
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](https://reader033.vdocuments.mx/reader033/viewer/2022051219/5681632f550346895dd3ad13/html5/thumbnails/22.jpg)
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](https://reader033.vdocuments.mx/reader033/viewer/2022051219/5681632f550346895dd3ad13/html5/thumbnails/23.jpg)
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](https://reader033.vdocuments.mx/reader033/viewer/2022051219/5681632f550346895dd3ad13/html5/thumbnails/24.jpg)
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](https://reader033.vdocuments.mx/reader033/viewer/2022051219/5681632f550346895dd3ad13/html5/thumbnails/25.jpg)
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](https://reader033.vdocuments.mx/reader033/viewer/2022051219/5681632f550346895dd3ad13/html5/thumbnails/26.jpg)
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](https://reader033.vdocuments.mx/reader033/viewer/2022051219/5681632f550346895dd3ad13/html5/thumbnails/27.jpg)
New Mexico .NET User Group
Collective Molecular Environment
![Page 28: Windows Presentation Foundation](https://reader033.vdocuments.mx/reader033/viewer/2022051219/5681632f550346895dd3ad13/html5/thumbnails/28.jpg)
The Future: 3D Collaborator Opens AutoCAD *.dwg Files
Natively
![Page 29: Windows Presentation Foundation](https://reader033.vdocuments.mx/reader033/viewer/2022051219/5681632f550346895dd3ad13/html5/thumbnails/29.jpg)
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](https://reader033.vdocuments.mx/reader033/viewer/2022051219/5681632f550346895dd3ad13/html5/thumbnails/30.jpg)
• 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](https://reader033.vdocuments.mx/reader033/viewer/2022051219/5681632f550346895dd3ad13/html5/thumbnails/31.jpg)
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](https://reader033.vdocuments.mx/reader033/viewer/2022051219/5681632f550346895dd3ad13/html5/thumbnails/32.jpg)
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