Archive for the 'Prism Contrib' Category

CompositeWPF (Prism) Contrib Latest Additions (2008-10-26)

These are the latest extensions added to the CompositeWPF Contrib community project:

Download

You can get these extensions, among others, by downloading latest change set of the CompositeWPF Contrib source control.

Where I can find the documentation of the extensions added to the project?

To check the documentation of the extensions added so far, please visit the Documentation page in the community site.

 

Enjoy!

New Samples in CompositeWPF (Prism) Contrib (2008-09-13)

Four new samples has been added to the CompositeWPF Contrib community project:

Download

You can get these samples, among others extensions, by downloading latest change set of the CompositeWPF Contrib source control.

Coming soon

Some people has been asking for an OutlookBar sample. The good news is that Damian Schenkelman and me are working on it, so stay tuned, we will publish it soon.

CompositeWPF (Prism) Contrib Latest Additions (2008-07-26)

These are the latest extensions added to the CompositeWPF Contrib community project:

  • Extended Module Loader Service (contributed by Willem Meints). The extended module loader service can be used to load modules on demand. When the module loader service loads a module it will check if the module being loaded is actually installed and install it from the original installation source.
  • Module Status Service (contributed by Willem Meints). The module status service can be used to retrieve a list of modules and their status (loaded or unloaded). This is particular useful when you want to show the user of your CompositeWPF application what modules are available to the application and which modules are actually active at this moment. image
    For more information about this service, see Module status service for CompositeWPF.
  • OutlookBar control and region adapter.
     
    For more information about this control, see Use the OutlookBar in your CompositeWPF (Prism) Applications.
Where I can find the documentation of the extensions added to the project?

To check the documentation of the extensions added so far, please visit the Documentation page in the community site.

To learn more about other additions to the project, see this post.

Enjoy!

Use the OutlookBar in your CompositeWPF (Prism) Applications

Two years ago, together with Matias Woloski we wrote the Outlook Bar for the Composite Application Block (CAB). I can say that it was a popular workspace, with more than 19,000 downloads!. Now that we shipped CompositeWPF (Prism), some people at the CompositeWPF community started asking for the OutlookBar for CompositeWPF, so Julian Dominguez, Matias Woloski and me decided to spend some time and create the Composite WPF version.

clip_image001

 

Usage

First of all, you have to register the region adapter mapping in the Bootstrapper as shown in the code below:

protected override RegionAdapterMappings ConfigureRegionAdapterMappings()
{
    IEventAggregator eventAggregator = Container.Resolve<IEventAggregator>();

    RegionAdapterMappings mappings = base.ConfigureRegionAdapterMappings();

    mappings.RegisterMapping(typeof(OutlookBarControl), new OutlookBarControlRegionAdapter(eventAggregator));

    return mappings;
}

Now you can add the OutlookBarControl to your Shell/View XAML (you have to declare the namespace on the top of the file):

<Controls:OutlookBarControl 
       cal:RegionManager.RegionName="{x:Static infrastructure:RegionNames.OutlookBarRegion}"/>
                
To add views, just obtain the region and call the Add method as you do with other regions: 

IRegionManager regionManager = Container.Resolve<IRegionManager>();
MyView view = new MyView();
OutlookBarControl.SetOutlookBarMetadata(view, new OutlookBarMetadata
    {
        Title = "Mail",
        Payload = "MyPayload"
    });

regionManager.Regions[RegionNames.OutlookBarRegion].Add(view);
regionManager.Regions[RegionNames.OutlookBarRegion].Activate(view);

As you may noticed, in the preceding code we are also setting the OutlookBarMetadata attached property to the view. This attached property is used by the control template and by the OutlookBarControlRegionAdapter.

  • In the control template we are using the Title property in the OutlookBarControl header and in the buttons.
  • In the region adapter we are using the payload to publish the OutlookBarEvent. This event is published every time you select a view.

The OutlookBarMetadata serves a similar purpose the OutlookBarSmartPartInfo served in the CAB version.

Disclaimer

This code is provided "AS IS" with no warranties, and confers no rights.

Acknowledgments

The control template is based on this article on CodeProject.

Download

You can get the OutlookBar by downloading the latest change set of the CompositeWPF Contrib source control.

 

Stay tuned, we are working on v1.1 of the OutlookBar.

CompositeWPF (Prism) Contrib Latest Additions

A week ago we shipped the Composite Application Guidance for WPF and many people (including me) started to contribute in the CompositeWPF Contrib community project and to play with the guidance.

Let’s explore the latest additions added to the CompositeWPF Contrib project.

  • CompositeModuleEnumerator. The CompositeModuleEnumerator makes it possible to combine several module enumerator instances into one module enumerator. This makes it easier for developers to for example combine both fixed modules and modules loaded through the ConfigurationModuleEnumerator.
    image
    For more information about the CompositeModuleEnumerator, see Combining module enumerators in CompositeWPF.
  • ToolBarPanelRegionAdapter. This adapter adapts control of type System.Windows.Controls.Primitives.ToolBarPanel and derived classes.
  • Visual Studio Templates. The goal of these templates is to help users start with the Composite WPF project
    For more information about the Visual Studio Templates, see Composite Application Guidance for WPF Visual Studio Templates.

I’ve been also reorganizing the folder structure of the project, so if you download the latest change set you will find the following structure:

image

If you want to contribute to the project, please follow the Sign Up Process.

Enjoy!

PrismContrib Launched

We’ve just launched the PrismContrib site for those who want to contribute with tools and extension for the Prism project.

As you would probably expect, there isn’t anything in the source tree yet since the project have only just been launched but soon you will find:

  • SilverlightAG - Prism for Silverlight
  • Prism Extensions - Add-on commands, services, regions, etc to aid you in your Prism development

So, would you like to share your own extensions? Check the following links to know how to join as a developer of the PrismContrib project:

Enjoy!