how to build an outlook style application with prism v2 – Part 2 - Erwin van der Valk's blog: Practicing patterns how to build an outlook style application with prism v2 – Part 2 - Erwin van der Valk's blog: Practicing patterns A while ago, I put an example application on my blog on how to build an outlook style application. The last couple of weeks, I’ve been working on a new version of this app. I’ve done some bugfixes, but also included support for opening use cases in a popup window. It’s turning out to be quite an advanced demo of what’s possible with Prism.
[Update] This is part 1 of this post. Read the second post here. At the end of building prism V2, we have played around with different application styles to see how easy it is to consume our own libraries. In this blog post, I’m going to describe my attempt at creating an outlook style application. how to build an outlook style application – part 1 - Erwin van der Valk's blog: Practicing patterns how to build an outlook style application – part 1 - Erwin van der Valk's blog: Practicing patterns
Main Page - MonoDevelop Main Page - MonoDevelop MonoDevelop is a cross-platform IDE primarily designed for C# and other .NET languages. MonoDevelop enables developers to quickly write desktop and ASP.NET Web applications on Linux, Windows and Mac OSX. MonoDevelop makes it easy for developers to port .NET applications created with Visual Studio to Linux and Mac OSX maintaining a single code base for all platforms. Multi-platform Supports Linux, Windows and Mac OS X.
By Jeremy Geelan The Arlington, Virginia-based National Science Foundation has just released its "Report on Support for Cloud Computing" - in response to the America Competes Reauthorization Act of 2010, Section 524. It is an absolute must-read for all concerned with current and future research projects in Cloud Computing. web services ajax soa web services ajax soa
The Prentice Hall Service-Oriented Computing Series from Thomas Erl - About The Series - SOA Design Patterns Praise "The emerging dominant architectural style for many enterprise systems is that of a service-oriented architecture, a style that at its core is essentially a message passing architecture. However, therein are many patterns that work (and anti-patterns that should be avoided). Thomas' work is therefore the right book at the right time. He really groks the nature of SOA systems: There are many hard design decisions to be made, ranging from data-orientation to the problems of legacy integration and even security. The Prentice Hall Service-Oriented Computing Series from Thomas Erl - About The Series - SOA Design Patterns
SOA Patterns - Master Pattern List (alphabetical)
patterns & practices: Developer Center Home
What's New in Prism 4.0 Prism 4.0 includes guidance in several new areas, resulting in new code in the Prism Library, new and updated QuickStarts, a new reference implementation, and updated documentation. Parts of the Prism Library changed between Prism 2.0 and Prism 4.0 to support the new guidance, fix existing issues, and respond to community requests. Prism 4.0 contains several areas of new guidance as follows: The Prism documentation has been reorganized so that you can find scenario-based topics easily. The key scenarios that Prism addresses are organized by chapter. Each chapter also includes key decisions that you should think about. What's New in Prism 4.0
Chapter 1: Introduction The Composite Application Guidance for WPF is a set of guidance designed to help you more easily manage the complexities you may face when building enterprise-level Windows Presentation Foundation (WPF) client applications. This guidance will help you design and build flexible WPF client applications using loosely coupled, independently evolvable pieces that work together and are integrated into the overall application. This type of application is known as a composite application. Chapter 1: Introduction
Chapter 2: Initializing Prism Applications This chapter addresses what needs to happen to get a Prism application up and running. A Prism application requires registration and configuration during the application startup process—this is known as bootstrapping the application. A bootstrapper is a class that is responsible for the initialization of an application built using the Prism Library. By using a bootstrapper, you have more control of how the Prism Library components are wired up to your application. Chapter 2: Initializing Prism Applications
Chapter 3: Managing Dependencies Between Components Applications based on the Composite Application Library are composites that potentially consist of many loosely coupled modules. They need to interact with the shell to contribute content and receive notifications based on user actions. Because they are loosely coupled, they need a way to interact and communicate with one another to deliver the required business functionality. To tie together these various modules, applications based on the Composite Application Library rely on a dependency injection container. Chapter 3: Managing Dependencies Between Components
Chapter 5: Implementing the MVVM Pattern Chapter 5: Implementing the MVVM Pattern The Model-View-ViewModel (MVVM) pattern helps you to cleanly separate the business and presentation logic of your application from its user interface (UI). Maintaining a clean separation between application logic and UI helps to address numerous development and design issues and can make your application much easier to test, maintain, and evolve. It can also greatly improve code re-use opportunities and allows developers and UI designers to more easily collaborate when developing their respective parts of the application. Using the MVVM pattern, the UI of the application and the underlying presentation and business logic is separated into three separate classes: the view, which encapsulates the UI and UI logic; the view model, which encapsulates presentation logic and state; and the model, which encapsulates the application's business logic and data.
An application user interface (UI) can be built by using one of the following paradigms: All required controls for a form are contained in a single Extensible Application Markup Language (XAML) file, composing the form at design time. Logical areas of the form are separated into distinct parts, typically user controls. The parts are referenced by the form, and the form is composed at design time. Chapter 7: Composing the User Interface
As the user interacts with a rich client application, its user interface (UI) will be continuously updated to reflect the current task and data that the user is working on. The UI may undergo considerable changes over time as the user interacts with and completes various tasks within the application. The process by which the application coordinates these UI changes is often referred to as navigation. Chapter 8: Navigation
Chapter 9: Communicating Between Loosely Coupled Components The EventAggregator service is primarily a container for events that allow decoupling of publishers and subscribers so they can evolve independently. This decoupling is useful in modularized applications because new modules can be added that respond to events defined by the shell or, more likely, other modules. In the Composite Application Library, EventAggregator allows subscribers or publishers to locate a specific EventBase. The event aggregator also allows for multiple publishers and multiple subscribers, as shown in Figure 1. Figure 1 Event Aggregator
Chapter 11: Deploying Prism Applications To successfully move a Prism application into production, you need to plan for deployment as part of the design process of your application. This chapter covers the considerations and actions you need to perform to prepare your application for deployment and the actions you need to take to get the application in the user's hands. Silverlight and Windows Presentation Foundation (WPF) have two very different hosting environments, so the deployment considerations are different, depending on whether you are building a Silverlight Prism application or a WPF Prism application. Silverlight applications are delivered as XAP files via an HTTP request from a browser. A XAP file is really just a .zip file with a different file name extension and certain expectations about its content.
patterns & practices: Prism - View Discussion So... in case anyone comes across this thread, here's what I wound up with. To add items to the options dialog, a module creates a class or classes that export IOptionsProvider. IOptionsProvider is very simplistic it only requires a key to uniquely identify itself, A method that returns the option items for the tree view, and a method to get the data for an option item based on a key. I have an options service that is responsible for showing the dialog. It looks for any modules that export IOptionsProvider and builds the hierarchical view model for the tree view using the get option items method of the IOptionsProvider. The option items contain an exported key for the View that will display on the right, and a provider and data key for it's data.
Developer's Guide to Microsoft Prism
WPF and MVVM tutorial 04, The Commands.
WPF and MVVM tutorial 05, The basic ViewModel.
WPF and MVVM tutorial 06, start up form.
WPF and MVVM tutorial 07, the List search.
John Gossman Architects WPF - Pixel8 - Infragistics Community
Implementing Model-View-ViewModel in WPF - Pixel8 - Infragistics Community
Using MVVM with Menus in WPF
Menus and MVVM (2)
MVVM for Dummies
WPF and MVVM tutorial 04, The Commands.
WPF and MVVM tutorial 05, The basic ViewModel.
WPF and MVVM tutorial 06, start up form.
WPF and MVVM tutorial 07, the List search.
WPF OpenFileDialog with the MVVM pattern?
Open File Dialog MVVM
Using MVVM with Menus in WPF
Model View ViewModel
Model View ViewModel
[WPF] Le pattern MVVM (Model View ViewModel) , Thomas Lebrun
Model-View-ViewModel (MVVM) Explained
MVVM Links\Info
MVVM Explained
Open File Dialog MVVM
WPF OpenFileDialog with the MVVM pattern?