Upload
carlene-dorman
View
111
Download
3
Embed Size (px)
Citation preview
Agenda
* Was ist WPF?
* Architektur
* Voraussetzungen beim Entwickler
* Voraussetzungen beim Kunden
* Beispiele• Eigene Beispiele• Avalon Patient Monitoring
Was wollen wir eigentlich?
* VFP Anwendung
* WPF Benutzeroberfläche
* Mehrschichtenarchitektur
*Fragen? Jederzeit!
Windows Presentation Foundation
* Technologie für Benutzeroberflächen
* Enthalten im .NET Framework 3.0
* Benutzung aus Visual Studio einfach möglich
* XAML Formulare
* Viele Steuerelemente
* Vererbung
Aus der Sicht von VFP
* Formulare
* Datenanbindung* Controlsource
* Event Anbindung• Interactivechange• Valid
Konzept / Architektur
* Mehrschichtenarchitetur
* Entwicklungsumgebungen• VFP
* Möglichst viel
• Visual Studio* Möglichst wenig und generisch
Konzept / Architektur* Datenbank
• VFP, SQL Server, andere
* Datenzugriff• VFP Cursoradapter
* Geschäftslogik• VFP
* Steuerung• .NET DLL
* Benutzeroberfläche• XAML
VFP Layer
VFP Business rules classes
VFP Data Access
Database Layer
MS SQL MySQLOracleDB/2VFP
WPF Layer
Generic .Net object that renders XAML and gives feedback to VFP application for events
VFP Exe-DateiSteuerung
Geschäftslogik
Daten-bank
.NETWPF Manager DLL
XAMLBenutzeroberfläche
VFP COM ServerBackend Provider DLL
Hauptprogramm, Rahmen
* VFP Projekt
* Datenzugriff
* Geschäftslogik
* Ansteuerung von WPF
* unsichtbar
Benutzeroberfläche
* MDI Interface• Multiple Document Interface• Steuerung mit Menü und/oder Symbolleiste
* Sichtbarer Rahmen
* Formulare
Ablauf
* Start VFP Anwendung
* Initialisierung Mittelschicht Komponenten
* Datenanbindung
* Anzeige der Benutzeroberfläche
VFP Layer
VFP Business rules classes
VFP Data Access
Database Layer
WPF Layer
Start
User clicks a toolbar button
VFP code decides what action to take: start a new form
CA object
Business rules and process flow control object
WPF form
time
BackendDataprovider object WPFBackend.DLL
Process flow (object instantiating and events firing)
Data flow
Sta
rt W
PF
M
ain
fo
rm
Sta
rt W
PF
su
b-f
orm
refe
ren
ce
User Action:Tab key pressed
Render UI
Fir
e L
ost
Fo
cus
ev
ent
User Action:Close button clicked
Fir
e C
los
ing
ev
en
t
Save?
Can
ce
l cl
os
ing
– Y
es
/No
Geschäftslogik
* Gewohntes VFP
* Ereignisse aus der WPF Benutzeroberfläche steuern die Geschäftslogik
Datenzugriff
* Gewohntes VFP
* Cursoradapter• Objektorientiert!
* Alle unterstützen Datenbanken
Datenbank
* VFP DBC
* SQL Server
* Andere• ODBC• OLE DB• Muss mit Cursoradapter erreichbar sein
Data Binding
* Controlsource in VFP
* Definierte Eigenschaft Controlsource in WPF
* Realisierung mit VFP COM Server
Event Binding
* Reagieren auf Ereignisse* Beispiele:
Valid, When, Gotfocus, Lostfocus, Interactivechange, Keypress, Init, Destroy, Click, Dblclick, Rightclick
* WPF -> WPF Manager DLL
-> VFP BackendDataProvider -> VFP cursor
Entwicklung der Benutzeroberfläche
* Editor
* Microsoft Expression Blend
Bereitstellung der Benutzeroberfläche
* XAML Formulare in VFP Anwendung
* WPF Manager DLL• Schicht zwischen VFP und .NET• Mit Visual Studio erstellt• Anzeige der XAML Formulare
Voraussetzungen beim Entwickler
* VFP 9
* .NET Framework 3.0
* Visual Studio 2008
* Expression Blend
Voraussetzungen beimKunden
* .NET Framework 3.0• Installierbar auf XP und 2003• Enthalten in Vista
* WPF Manager DLL mit Regasm registrierenC:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\RegAsm.exe <DLL Path>\WpfInterface.dll
/codebase /tlb:WpfInterface.tlb
* VFP Runtime
* Dateien der Anwendung
BeispielanwendungHealthcare
* Avalon Patient Monitoring
* Optisch ansprechend
* Keine Datenanbindung
Vielen Dank undviel Spaß mit WPF!
Venelina & Uwe