1 / 23

Composite Applications with WPF and PRISM 4.0

Eyal Vardi CEO E4D Solutions LTD Microsoft MVP Visual C# blog: www.eVardi.com. Composite Applications with WPF and PRISM 4.0. About. Consulting Mentoring Projects. Agenda. Security. Communication. Productivity. How to build Composite application?. Modularity. Deployment.

Download Presentation

Composite Applications with WPF and PRISM 4.0

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Eyal Vardi CEO E4D Solutions LTDMicrosoft MVP Visual C#blog: www.eVardi.com Composite Applications with WPF and PRISM 4.0

  2. About • Consulting • Mentoring • Projects

  3. Agenda Security Communication Productivity How to build Composite application? Modularity Deployment Extensibility Multi-Language

  4. Outlook Sample

  5. Shell & Region == Master Page Ribbon App Nav Body Pane Calendar Contacts App’s Status Bar

  6. DEMO Shell & Region

  7. View-Based Navigation _container.RegisterType<Object, ViewName>("ViewName"); _regionManager.RequestNavigate( "RegionName",   newUri( "ViewName",UriKind.Relative) ); publicinterfaceINavigationAware {voidOnNavigatedTo(NavigationContextnavigationContext);         boolIsNavigationTarget(NavigationContextnavigationContext);      voidOnNavigatedFrom(NavigationContextnavigationContext);     }

  8. DEMO Navigation

  9. Publisher / Subscriber Publisher Event Aggregator Publisher Subscriber Subscriber Subscriber Publisher

  10. DEMO Event Aggregator

  11. Visual State Manager (VSM) Data States Security States Communication States

  12. Visual State Manager (VSM) State Transition State Groups

  13. DEMO Visual State Manager

  14. State-Based Navigation <DataStateBehavior Binding="{BindingIsChecked,ElementName= ShowAsListButton}" TrueState="ShowAsList"FalseState="ShowAsIcons"/>

  15. Initiating State Changes • The authors is responsible for telling VisualStateManager when a visual state change should occur. [TemplateVisualState(Name="Normal" , GroupName="CommonStates")] [TemplateVisualState(Name="MouseOver", GroupName="CommonStates")] [TemplateVisualState(Name="Pressed" , GroupName="CommonStates")] publicclassNumericUpDown : Control } { privatevoidGoToState(booluseTransitions) } if (isPressed) VisualStateManager.GoToState(this, "Pressed" , useTransitions); elseif (isMouseOver) VisualStateManager.GoToState(this, "MouseOver", useTransitions); else VisualStateManager.GoToState(this, "Normal“ , useTransitions); {

  16. Behaviors & Actions are Everywhere Conditional Data Motion Animation

  17. Behavior is a… Attached property • <ButtonContent="Click Me"> • </Button> • <i:Interaction.Triggers> • </i:Interaction.Triggers> • <i:EventTriggerEventName="Click"> • </i:EventTrigger> • <E4D:MyActionTargetName="lbTrace" /> XAML Add-on Drag & Drop

  18. DEMO Behaviors & Actions

  19. Communication Module WCF Interfaces P P Communication SH Event Aggregator

  20. Summary • Keep the client thin. • Defined your visual state with VSM. • Use Behaviors & Actions for RAD. • Use the Prism for modularity.

  21. Questions?

  22. Eyal Vardi CEO E4D Solutions LTDMicrosoft MVP Visual C#blog: www.eVardi.com

More Related