<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="http://www.codeplex.com/rss.xsl"?><rss version="2.0"><channel><title>Patterns &amp; Practices: Composite WPF Contrib</title><link>http://www.codeplex.com/CompositeWPFContrib/Project/ProjectRss.aspx</link><description>Composite WPF Contrib contains community extensions to the patterns &amp;#38; practices Prism project   </description><item><title>New Post: Unexpected behavior of OutlookBarControl when setting initial state</title><link>http://www.codeplex.com/CompositeWPFContrib/Thread/View.aspx?ThreadId=35006</link><description>&lt;div style="line-height: normal;"&gt;Hi all,$0$0$0$0By initial state I mean that none of the views loaded into the OutlookBarControl is selected. $0$0$0$0$0My problem is the following: I want to have an initial state of my OutlookBarControl. All the views should be loaded, and visible as tabs, but none of them may be selected yet. $0$0$0$0$0When I add 1 view to the control without an Activate of the view, then it isn't selected. $0$0$0$0$0(Now it get's weird) When I add a 2nd view to the control without an Activate, then the 1st view is selected. $0$0$0$0$0$0$0$0(A small note: the behavior of the Activate method is working as expected once a view is selected. I just need to know how I can get an initial state where no views are selected.)$0$0$0$0$0$0$0$0Any info concerning this topic is welcome!!$0$0Kind regards,$0Wim$0&lt;/div&gt;</description><author>deblendewim</author><pubDate>Fri, 05 Sep 2008 13:02:38 GMT</pubDate><guid isPermaLink="false">New Post: Unexpected behavior of OutlookBarControl when setting initial state 20080905010238P</guid></item><item><title>Updated Wiki: DialogWorkspace</title><link>http://www.codeplex.com/CompositeWPFContrib/Wiki/View.aspx?title=DialogWorkspace&amp;version=1</link><description>&lt;div class="wikidoc"&gt;
&lt;h2&gt;
Introduction
&lt;/h2&gt;The dialog workspace can be used by developers to show any view as a dialog in the application. In this first version the workspace options are limited to a dialog with an Accept and Cancel Button. In future versions these options will be expanded to offer more functionality.&lt;br /&gt; &lt;br /&gt;&lt;h2&gt;
Using the dialog workspace
&lt;/h2&gt;You only need a small piece of code to show a view as a dialog. The following snippet demonstrates showing a dialog with validation logic.&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
ISampleView view = _container.Resolve&amp;lt;ISampleView&amp;gt;();
bool? result = DialogWorkspace.ShowView(view,() =&amp;gt; 
{
    return true;
});
 
if (result == true)
{
    
}
&lt;/pre&gt; &lt;br /&gt;
&lt;/div&gt;</description><author>WMeints</author><pubDate>Fri, 05 Sep 2008 07:10:17 GMT</pubDate><guid isPermaLink="false">Updated Wiki: DialogWorkspace 20080905071017A</guid></item><item><title>Updated Wiki: Documentation</title><link>http://www.codeplex.com/CompositeWPFContrib/Wiki/View.aspx?title=Documentation&amp;version=6</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;
Documentation
&lt;/h1&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.codeplex.com/CompositeWPFContrib/Wiki/View.aspx?title=PrismAG&amp;amp;referringTitle=Documentation"&gt;PrismAG&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/CompositeWPFContrib/Wiki/View.aspx?title=OutlookBar&amp;amp;referringTitle=Documentation"&gt;OutlookBar&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/CompositeWPFContrib/Wiki/View.aspx?title=CompositeModuleEnumerator&amp;amp;referringTitle=Documentation"&gt;Composite Module Enumerator&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/CompositeWPFContrib/Wiki/View.aspx?title=Module%20Status%20Service&amp;amp;referringTitle=Documentation"&gt;Module Status Service&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/CompositeWPFContrib/Wiki/View.aspx?title=Extended%20Module%20Service&amp;amp;referringTitle=Documentation"&gt;Extended Module Loader Service&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/CompositeWPFContrib/Wiki/View.aspx?title=VisualStudioTemplates&amp;amp;referringTitle=Documentation"&gt;Visual Studio Templates&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/CompositeWPFContrib/Wiki/View.aspx?title=InfragisticsExtensions&amp;amp;referringTitle=Documentation"&gt;Infragistics Extensions&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/CompositeWPFContrib/Wiki/View.aspx?title=DSASampleCompositeWPF&amp;amp;referringTitle=Documentation"&gt;DSA Sample with CompositeWPF&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/CompositeWPFContrib/Wiki/View.aspx?title=DialogWorkspace&amp;amp;referringTitle=Documentation"&gt;Dialog Workspace&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;</description><author>WMeints</author><pubDate>Fri, 05 Sep 2008 07:07:26 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Documentation 20080905070726A</guid></item><item><title>Updated Wiki: Home</title><link>http://www.codeplex.com/CompositeWPFContrib/Wiki/View.aspx?title=Home&amp;version=29</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;
Welcome to the Composite WPF Contrib project
&lt;/h1&gt; &lt;br /&gt;Composite WPF Contrib is a community-developed library of extensions to the patterns &amp;amp; practices &lt;a href="/CompositeWPF" class="externalLink"&gt;Composite WPF project&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;. &lt;br /&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;If you are building custom tools and extensions and want to share them then Composite WPF Contrib will get it out to the masses.&lt;/li&gt;&lt;li&gt;If you've got a great idea for new extensions Composite WPF contrib is the place to find developers ready, willing, and able to make it happen.&lt;/li&gt;&lt;li&gt;If you use Composite WPF within your org, then Composite WPF Contrib is the place to find tools and extensions to add to your arsenal.&lt;/li&gt;&lt;li&gt;If you want to connect with others who are pushing the bar on Prism development, then Prism Contrib is the place to be.&lt;/li&gt;
&lt;/ul&gt;Prism contrib is about &lt;b&gt;YOU&lt;/b&gt;. With &lt;b&gt;your&lt;/b&gt; help we can make it a vibrant resource for WPF Composite developers world-wide.&lt;br /&gt; &lt;br /&gt;&lt;h3&gt;
News
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;(2008-09-05) &lt;b&gt;New Extensions&lt;/b&gt;&lt;/li&gt;&lt;ul&gt;
&lt;li&gt;&lt;b&gt;DialogWorkspace&lt;/b&gt; Show any view as a dialog in your application. Sample is included.&lt;/li&gt;
&lt;/ul&gt;&lt;li&gt;(2008-08-11) &lt;b&gt;New Sample&lt;/b&gt;&lt;/li&gt;&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Sample application&lt;/b&gt; that demonstrate how to use the Disconnected Service Agent Application Block with CompositeWPF&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;&lt;img src="http://www.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=CompositeWPFContrib&amp;amp;DownloadId=41210" alt="dsa.png" /&gt;&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;(2008-07-31) &lt;b&gt;New Extensions&lt;/b&gt;&lt;/li&gt;&lt;ul&gt;
&lt;li&gt;&lt;b&gt;TabGroupPaneRegionAdapter&lt;/b&gt;. Infragistics TabGroupPane Region Adapter for CompositeWPF&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;&lt;img src="http://www.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=CompositeWPFContrib&amp;amp;DownloadId=40287" alt="TabGroupPaneRegionAdapterMedium.jpg" /&gt;&lt;br /&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;(2008-07-25) &lt;b&gt;New Extensions&lt;/b&gt;&lt;/li&gt;&lt;ul&gt;
&lt;li&gt;&lt;b&gt;ExtendedModuleLoaderService&lt;/b&gt;. Extended module loader service with support to install modules on demand using windows installer&lt;/li&gt;
&lt;/ul&gt;&lt;li&gt;(2008-07-21) &lt;b&gt;New Extensions&lt;/b&gt;&lt;/li&gt;&lt;ul&gt;
&lt;li&gt;&lt;b&gt;OutlookBar&lt;/b&gt;. OutlookBar control and region adapter for CompositeWPF&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;&lt;img src="http://www.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=CompositeWPFContrib&amp;amp;DownloadId=39481" alt="outlookbar.png" /&gt;&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;(2008-07-17) &lt;b&gt;New Extensions&lt;/b&gt;&lt;/li&gt;&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Module Status Service&lt;/b&gt;. The Module Status Service can be used to retrieve information about what modules are loaded&lt;/li&gt;
&lt;/ul&gt;&lt;li&gt;(2008-07-11) &lt;b&gt;New Extensions&lt;/b&gt;&lt;/li&gt;&lt;ul&gt;
&lt;li&gt;&lt;b&gt;CompositeModuleEnumerator&lt;/b&gt;. The CompositeModuleEnumerator makes it possible to combine several module enumerator instances into one module enumerator.&lt;/li&gt;&lt;li&gt;&lt;b&gt;ToolBarPanelRegionAdapter&lt;/b&gt;. This adapter adapts control of type &lt;b&gt;System.Windows.Controls.Primitives.ToolBarPanel&lt;/b&gt; and derived classes.&lt;/li&gt;
&lt;/ul&gt;&lt;li&gt;(2008-07-08) &lt;b&gt;New Visual Studio Templates&lt;/b&gt;. The goal of these templates is to help users start with the &lt;a href="/CompositeWPF" class="externalLink"&gt;Composite WPF project&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;. &lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h3&gt;
What's in Prism Contrib?
&lt;/h3&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;PrismAG - Composite WPF for Silverlight &lt;/li&gt;&lt;li&gt;OutlookBar - OutlookBar control and region adapter for CompositeWPF &lt;/li&gt;&lt;li&gt;CompositeModuleEnumerator - Composite Module Enumerator&lt;/li&gt;&lt;li&gt;Module Status Service - A service that can be used to retrieve information about what modules are loaded&lt;/li&gt;&lt;li&gt;Extended Module Service - An extended module loader service with support to install modules on demand using windows installer&lt;/li&gt;&lt;li&gt;Visual Studio Templates&lt;/li&gt;&lt;li&gt;Composite WPF Extensions - Add-on commands, services, regions, etc to aid you in your Composite WPF development&lt;/li&gt;&lt;li&gt;Infragistics Extensions - Infragistics Extensions for CompositeWPF&lt;/li&gt;&lt;li&gt;Samples&lt;/li&gt;
&lt;/ul&gt;See the &lt;a href="http://www.codeplex.com/CompositeWPFContrib/Wiki/View.aspx?title=Documentation&amp;amp;referringTitle=Home"&gt;Documentation&lt;/a&gt; index for information on how to use each of these extensions and components.&lt;br /&gt; &lt;br /&gt;&lt;h3&gt;
Contributing to Composite WPF Contrib
&lt;/h3&gt;Would you like to join as a developer of the Composite WPF Contrib project to share your own extensions or improve the existing codebase? Great! Here is what you need to know&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.codeplex.com/entlibcontrib/Wiki/View.aspx?title=About%20p%26p%20%22Contrib%22%20projects&amp;amp;referringTitle=Home" class="externalLink"&gt;About p&amp;amp;p &amp;quot;Contrib&amp;quot; projects&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/CompositeWPFContrib/Wiki/View.aspx?title=Guidelines%20for%20Composite%20WPF%20Contrib%20code&amp;amp;referringTitle=Home"&gt;Guidelines for Composite WPF Contrib code&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/CompositeWPFContrib/Wiki/View.aspx?title=Sign%20Up%20Process&amp;amp;referringTitle=Home"&gt;Sign Up Process&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;h3&gt;
Other p&amp;amp;p Contrib Projects
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="/scsfcontrib" class="externalLink"&gt;Smart Client Contrib&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="/wcsfcontrib" class="externalLink"&gt;Web Client Software Factory Contrib&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="/entlibcontrib" class="externalLink"&gt;Enterprise Library Contrib&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;</description><author>WMeints</author><pubDate>Fri, 05 Sep 2008 07:06:25 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Home 20080905070625A</guid></item><item><title>Source code checked in, #15532</title><link>http://www.codeplex.com/CompositeWPFContrib/SourceControl/ListDownloadableCommits.aspx</link><description>Added new DialogWorkspace component &amp;#43; Sample to test the new functionality</description><author>WMeints</author><pubDate>Fri, 05 Sep 2008 06:35:53 GMT</pubDate><guid isPermaLink="false">Source code checked in, #15532 20080905063553A</guid></item><item><title>New Post: Silverlight and Unity.Configuration</title><link>http://www.codeplex.com/CompositeWPFContrib/Thread/View.aspx?ThreadId=33819</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;Hi Richie,&lt;/p&gt;
&lt;p&gt;I have sent the sourcecode of SLUnity.Configuration (+ existing projects) and Sample. Currently, we will need to have a XML file on ASP.NET project and Silverlight project &amp;quot;XMLConfigurationManager&amp;quot; will read that XML and will register or resolve based on XML file. &lt;/p&gt;
&lt;p&gt;I believe that people may not like to put those configurations in XML. Instead, I should probably create WCF service that return those configuration in XML formats.Plus, we need to think about security too. But I think https or ASP.NET form-authentication will help. &lt;/p&gt;
&lt;p&gt;Please feel free to email me or post here if you have any suggestion or comment. &lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/div&gt;</description><author>michaelsync</author><pubDate>Fri, 29 Aug 2008 10:20:53 GMT</pubDate><guid isPermaLink="false">New Post: Silverlight and Unity.Configuration 20080829102053A</guid></item><item><title>New Post: Silverlight and Unity.Configuration</title><link>http://www.codeplex.com/CompositeWPFContrib/Thread/View.aspx?ThreadId=33819</link><description>&lt;div style="line-height: normal;"&gt;Michael,&lt;br&gt;
&lt;br&gt;
That is exactly what I want and I would be very willing to help test any early developments you have.&lt;br&gt;
&lt;br&gt;
Cheers&lt;br&gt;
Richie
&lt;/div&gt;</description><author>RichieScott</author><pubDate>Fri, 29 Aug 2008 09:21:43 GMT</pubDate><guid isPermaLink="false">New Post: Silverlight and Unity.Configuration 20080829092143A</guid></item><item><title>New Post: Silverlight and Unity.Configuration</title><link>http://www.codeplex.com/CompositeWPFContrib/Thread/View.aspx?ThreadId=33819</link><description>&lt;div style="line-height: normal;"&gt;&lt;blockquote&gt;
&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;This is me again. I wanna update the sample that I posted in previous thread. &lt;/p&gt;
&lt;p&gt;The code will be like that. Do you think it's okay for your project? &lt;/p&gt;
&lt;p&gt; private void Application_Startup(object sender, StartupEventArgs e) {&lt;/p&gt;
XMLConfigurationManager.LoadUnityConfigurationAsync(new Uri(&amp;quot;http://localhost:1656/SampleWeb/UnityConfigs.xml&amp;quot;));&lt;br&gt;
&lt;br&gt;
XMLConfigurationManager.OnConfigLoaded += new XMLConfigurationManager.XmlConfigHandler(XMLConfigurationManager_OnConfigLoaded);&lt;br&gt;
this.RootVisual = new Page();&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
}&lt;br&gt;
&lt;br&gt;
void XMLConfigurationManager_OnConfigLoaded(object sender, EventArgs e) {&lt;br&gt;
UnityConfigurationSection uConfigSection = XMLConfigurationManager.ConfigurationSection;&lt;br&gt;
IUnityContainer myContainer = new UnityContainer();&lt;br&gt;
uConfigSection.Configure(myContainer);&lt;br&gt;
}&lt;br&gt;
&lt;br&gt;
&lt;/blockquote&gt;
&lt;/div&gt;</description><author>michaelsync</author><pubDate>Fri, 29 Aug 2008 06:57:13 GMT</pubDate><guid isPermaLink="false">New Post: Silverlight and Unity.Configuration 20080829065713A</guid></item><item><title>New Post: Silverlight and Unity.Configuration</title><link>http://www.codeplex.com/CompositeWPFContrib/Thread/View.aspx?ThreadId=33819</link><description>&lt;div style="line-height: normal;"&gt;Hi,&lt;br&gt;
&lt;br&gt;
How would you configure your config file instead of having those hard-codes? &lt;br&gt;
&lt;br&gt;
The following should be okay for you?? &lt;br&gt;
&lt;br&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot; ?&amp;gt; &lt;br&gt;
&amp;lt;configuration&amp;gt;&lt;br&gt;
&amp;lt;configSections&amp;gt;&lt;br&gt;
&amp;nbsp; &amp;lt;section name=&amp;quot;unity&amp;quot;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; type=&amp;quot;Microsoft.Practices.Unity.Configuration.UnityConfigurationSection,&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Microsoft.Practices.Unity.Configuration, Version=1.1.0.0,&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Culture=neutral, PublicKeyToken=31bf3856ad364e35&amp;quot; /&amp;gt;&lt;br&gt;
&amp;lt;/configSections&amp;gt;&lt;br&gt;
&amp;lt;unity&amp;gt;&lt;br&gt;
&amp;nbsp; &amp;lt;containers&amp;gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;container name=&amp;quot;containerOne&amp;quot;&amp;gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;types&amp;gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;type type=&amp;quot;ICustomerView&amp;quot; mapTo=&amp;quot;CustomerView&amp;quot; /&amp;gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;type type=&amp;quot;IFiscalDetailView&amp;quot; mapTo=&amp;quot;FiscalDetailView&amp;quot; /&amp;gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;type type=&amp;quot;ICustomerViewModel&amp;quot; mapTo=&amp;quot;CustomerViewModel&amp;quot; /&amp;gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;type type=&amp;quot;IFiscalDetailViewModel&amp;quot; mapTo=&amp;quot;FiscalDetailViewModel&amp;quot; /&amp;gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/types&amp;gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp; &amp;lt;/container&amp;gt;&lt;br&gt;
&amp;nbsp; &amp;lt;/containers&amp;gt;&lt;br&gt;
&amp;lt;/unity&amp;gt;&lt;br&gt;
&amp;lt;/configuration&amp;gt;&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
XMLConfigurationManager.LoadUnityConfiguration(new Uri(&amp;quot;UnityConfig.xml&amp;quot;), UriKind.Relative));&lt;br&gt;
&lt;br&gt;
IUnityContainer container = new UnityContainer();&lt;br&gt;
UnityConfigurationSection section = XMLConfigurationManager.GetSection(&amp;quot;unity&amp;quot;);&lt;br&gt;
section.Containers.Default.Configure(container);&lt;br&gt;
&lt;br&gt;
If yes, I will try to commit the latest code to SVN this weekend. The code are still under testing..&amp;nbsp; &lt;br&gt;
&lt;br&gt;
If no, please let me know how you like to configure in config and how you like to call in code. &lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;/div&gt;</description><author>michaelsync</author><pubDate>Thu, 28 Aug 2008 16:02:58 GMT</pubDate><guid isPermaLink="false">New Post: Silverlight and Unity.Configuration 20080828040258P</guid></item><item><title>New Post: Silverlight and Unity.Configuration</title><link>http://www.codeplex.com/CompositeWPFContrib/Thread/View.aspx?ThreadId=33819</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;Nice to hear from you again Michael.&lt;br&gt;
&lt;br&gt;
My example is based on the Silverlight-version of &amp;nbsp;CompositeUI incorporating the MVVM pattern. As part of the implementation of the IModule.Initialise I am registering my types as follows:&lt;br&gt;
&lt;br&gt;
&lt;span style="font-size:13px;color:#008000"&gt;&lt;span style="font-size:13px;color:#008000"&gt;&lt;span style="font-size:13px"&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/span&gt;
&lt;p&gt;&lt;span style="font-size:13px;color:#0000ff"&gt;&lt;span style="font-size:13px;color:#0000ff"&gt;private&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:13px"&gt; &lt;/span&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;IUnityContainer&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:13px"&gt; container;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:13px;color:#0000ff"&gt;&lt;span style="font-size:13px;color:#0000ff"&gt;private&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:13px"&gt; &lt;/span&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;ICustomerViewModel&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:13px"&gt; customerVM;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:13px;color:#0000ff"&gt;&lt;span style="font-size:13px;color:#0000ff"&gt;private&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:13px"&gt; &lt;/span&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;IFiscalDetailViewModel&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:13px"&gt; fiscalDetailVM;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:13px;color:#0000ff"&gt;&lt;span style="font-size:13px;color:#0000ff"&gt;private&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:13px"&gt; &lt;/span&gt;&lt;span style="font-size:13px;color:#0000ff"&gt;&lt;span style="font-size:13px;color:#0000ff"&gt;void&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:13px"&gt; RegisterViewsAndServices()
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;{&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:13px;color:#008000"&gt;&lt;span style="font-size:13px;color:#008000"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// Setup views
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/span&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:13px"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;container.RegisterType&amp;lt;&lt;/span&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;ICustomerView&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:13px"&gt;, &lt;/span&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;CustomerView&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:13px"&gt;&amp;gt;();
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;container.RegisterType&amp;lt;&lt;/p&gt;
&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;IFiscalDetailView&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:13px"&gt;, &lt;/span&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;FiscalDetailView&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:13px"&gt;&amp;gt;();
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:13px;color:#008000"&gt;&lt;span style="font-size:13px;color:#008000"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// Setup view model
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/span&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:13px"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;container.RegisterType&amp;lt;&lt;/span&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;ICustomerViewModel&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:13px"&gt;, &lt;/span&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;CustomerViewModel&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:13px"&gt;&amp;gt;();
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;container.RegisterType&amp;lt;&lt;/p&gt;
&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;IFiscalDetailViewModel&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:13px"&gt;, &lt;/span&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;FiscalDetailViewModel&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:13px"&gt;&amp;gt;();
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:13px;color:#008000"&gt;&lt;span style="font-size:13px;color:#008000"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// Setup model
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/span&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:13px"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;container.RegisterType&amp;lt;&lt;/span&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;ICustomerModel&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:13px"&gt;, &lt;/span&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;CustomerModel&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:13px"&gt;&amp;gt;();
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;container.RegisterType&amp;lt;&lt;/p&gt;
&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;IFiscalDetailModel&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:13px"&gt;, &lt;/span&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;FiscalDetailModel&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:13px"&gt;&amp;gt;();
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:13px;color:#008000"&gt;&lt;span style="font-size:13px;color:#008000"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// Resolve the view models
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/span&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:13px"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;customerVM = container.Resolve&amp;lt;&lt;/span&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;ICustomerViewModel&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:13px"&gt;&amp;gt;();
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:13px;color:#008000"&gt;&lt;span style="font-size:13px;color:#008000"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// the Customer View Model provides the instance of the Trader Context Service
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/span&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:13px"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;container.RegisterInstance&amp;lt;&lt;/span&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;ITraderContextService&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:13px"&gt;&amp;gt;(customerVM);
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;fiscalDetailVM = container.Resolve&amp;lt;&lt;/p&gt;
&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;&lt;span style="font-size:13px;color:#2b91af"&gt;IFiscalDetailViewModel&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:13px"&gt;&amp;gt;();
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;}&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/span&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;It would be really good if I didn't have to hard code these registrations but rather place them in&amp;nbsp;the unity&amp;nbsp;section of the config file. &lt;br&gt;
In the ViewModel classes being resolved I am currently using Constructor Injection and by&amp;nbsp;decorating properties with the [Dependency] attrribute (thus the reason for using SLUnity over DILight).&lt;br&gt;
&lt;br&gt;
Hope this helps&lt;br&gt;
Richie&lt;/p&gt;
&lt;/div&gt;</description><author>RichieScott</author><pubDate>Thu, 21 Aug 2008 11:20:44 GMT</pubDate><guid isPermaLink="false">New Post: Silverlight and Unity.Configuration 20080821112044A</guid></item><item><title>New Post: Silverlight and Unity.Configuration</title><link>http://www.codeplex.com/CompositeWPFContrib/Thread/View.aspx?ThreadId=33819</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;First of all, I'd like to say &amp;quot;Sorry&amp;quot; for not replying your last mail that you sent a couple of weeks ago. (WPF is eating the most of my free time lately :( )&lt;/p&gt;
&lt;p&gt;If you like to use IModule, I suggest you to give a try the Silverlight-version of CompositeUI. They called it &amp;quot;Spike&amp;quot;. AFAIK, they are using XMLModule loader to load the module dynamically. But I'm not sure whether that XMLModule is shipped it or not. If you like to try Spike, you will need to use SLUnity anyway.&lt;/p&gt;
&lt;p&gt;For DILight Vs SLUnity, I highly recommend you to use SLUnity. Since we are already having SLUnity, we don't need to use DILight anymore. AFAIK, we don't have any plan to update DILight in future too. &lt;/p&gt;
&lt;p&gt;For SLUnity.Configuration, there is one problem. I want to provide the &lt;span style="text-decoration:underline"&gt;same feeling&lt;/span&gt; of Unity.Configuration while you are using SLUnity.Configuration. But it seems like it's very hard. So, if I'm providing the easiest way then you won't get the same feeling of Unity.Configuration. &lt;/p&gt;
&lt;p&gt;What feature do you want from Unity.Configuration and show me the way (e.g. code sample) that you want to use in your project? &lt;/p&gt;
&lt;p&gt;You just wanna use like that? &lt;/p&gt;
&lt;p&gt;IUnityContainer container = new UnityContainer();&lt;br&gt;
UnityConfigurationSection section&lt;br&gt;
= (UnityConfigurationSection)ConfigurationManager.GetSection(&amp;quot;unity&amp;quot;);&lt;br&gt;
section.Containers.Default.Configure(container);&lt;br&gt;
&lt;/p&gt;
&lt;p&gt;OR eventhing that you can use with Unity.Configuration? &lt;/p&gt;
&lt;p&gt;IUnityContainer myContainer = new UnityContainer();&lt;br&gt;
myContainer.Configure&amp;lt;InjectedMembers&amp;gt;()&lt;br&gt;
.ConfigureInjectionFor&amp;lt;MyObject&amp;gt;(&lt;br&gt;
new InjectionConstructor(12, &amp;quot;Hello Unity!&amp;quot;),&lt;br&gt;
new InjectionProperty(&amp;quot;MyProperty&amp;quot;),&lt;br&gt;
new InjectionProperty(&amp;quot;MyStringProperty&amp;quot;, &amp;quot;SomeText&amp;quot;),&lt;br&gt;
new InjectionMethod(&amp;quot;InitializeMe&amp;quot;, 42.0, &lt;br&gt;
new ResolvedParameter(typeof(ILogger), &amp;quot;SpecialLogger&amp;quot;))&lt;br&gt;
);&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;/p&gt;
&lt;/div&gt;</description><author>michaelsync</author><pubDate>Thu, 21 Aug 2008 09:14:28 GMT</pubDate><guid isPermaLink="false">New Post: Silverlight and Unity.Configuration 20080821091428A</guid></item><item><title>New Post: Silverlight and Unity.Configuration</title><link>http://www.codeplex.com/CompositeWPFContrib/Thread/View.aspx?ThreadId=33819</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;I've got something to work for my situation:&lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;Use a&amp;nbsp;WCF Service to&amp;nbsp;download the configuration for the composite application, i.e. determine what addins are available.&amp;nbsp;The configuration will have the http:// location of the assembly and the name of the class (module) that implememts IModule &lt;/li&gt;
    &lt;li&gt;Use a WebClient to download the assembly.&lt;/li&gt;
    &lt;li&gt;Use AssemblyPart.Load(e.Result) to load the assembly&lt;/li&gt;
    &lt;li&gt;Use Assembly.CreateInstance(...) to create n instance of the class that implements IModule&lt;/li&gt;
    &lt;li&gt;Execute Initialise(container) on the addin class&lt;/li&gt;
    &lt;li&gt;The addin is then responsible for its own configuration using the client's container (RegionManagerService etc...)&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Having not being party to previous discussions my only concern is I am not using DILight, rather I am using SLUnity should this matter. My reason for using SLUnity is because I need to use property injection rather than constructor injection,&amp;nbsp;that's because the constructor&amp;nbsp;has already been called as part of the CreateInstance.&lt;br&gt;
&lt;br&gt;
Based on this solution I can allow addins to be added to my composite application dynamically&amp;nbsp;and by using the client's container they can subscibe to the pre-registered instances of the client's services.&lt;br&gt;
&lt;br&gt;
This doesn't solve 'how do I configure the container for the client's implementation?' - for that I&amp;nbsp;still think Unity.Configuration would help.&amp;nbsp;&lt;br&gt;
&lt;br&gt;
What do people think? Any comments / concerns,&amp;nbsp;should I be using SLUnity over DILight?&amp;nbsp;&lt;/p&gt;
&lt;/div&gt;</description><author>RichieScott</author><pubDate>Thu, 21 Aug 2008 07:24:34 GMT</pubDate><guid isPermaLink="false">New Post: Silverlight and Unity.Configuration 20080821072434A</guid></item><item><title>New Post: Silverlight and Unity.Configuration</title><link>http://www.codeplex.com/CompositeWPFContrib/Thread/View.aspx?ThreadId=33819</link><description>&lt;div style="line-height: normal;"&gt;Hi,&lt;br&gt;
&lt;br&gt;
Firstly,&amp;nbsp;as a newbie&amp;nbsp;to this forum I would just like to say 'Great Work Everybody' - the discussions and source has really helped me understand the opportunites / drawbacks there is when building Composite Silverlight Applications.&lt;br&gt;
&lt;br&gt;
My question is&amp;nbsp;'I was wondering if anyone out there was considering how Unity.Configuration was going to work with Silverlight?'&lt;br&gt;
&lt;br&gt;
My scenario is I want 3rd parties to be able to inject their own modules at run-time (i.e. I don't want to have to reference them in my project) into regions I have specifically exposed to them - basically I'm allowing 3rd parties to extend my application. &lt;br&gt;
&lt;br&gt;
I had thought of calling a WCF service which 'discovered' the modules on the server using a Configuration File on the server. The service would return a List&amp;lt;IModule&amp;gt; but obviously this would not work because how would the Silverlight Client serialize IModule.&amp;nbsp;&lt;br&gt;
&lt;br&gt;
I could let them extend the client directly by adding references and changing code&amp;nbsp;but I don't want them to have to do this everytime I release a new version of the project - i.e. I want my client to be unaware of any 3rd party extensions.&lt;br&gt;
&lt;br&gt;
Can anyone help?&lt;br&gt;
&lt;br&gt;
Thanks&lt;br&gt;
Richie&lt;br&gt;
&lt;br&gt;
&lt;/div&gt;</description><author>RichieScott</author><pubDate>Tue, 19 Aug 2008 15:19:44 GMT</pubDate><guid isPermaLink="false">New Post: Silverlight and Unity.Configuration 20080819031944P</guid></item><item><title>Source code checked in, #14588</title><link>http://www.codeplex.com/CompositeWPFContrib/SourceControl/ListDownloadableCommits.aspx</link><description>&amp;#35; Fixed issue where the view wasn&amp;#39;t removed from the Region when the ContentPane was closed. &amp;#13;&amp;#10;&amp;#35; Fixed issue where the view wasn&amp;#39;t disconnected from the ContentPane when it was removed. &amp;#13;&amp;#10;&amp;#35; Added 2 new test cases for the mentioned fixes&amp;#13;&amp;#10;&amp;#35; Refactored TabGroupPaneRegionSyncBehavior nested class to XamDockManagerActiveAwareBehavior public class.&amp;#13;&amp;#10;</description><author>cpi</author><pubDate>Mon, 18 Aug 2008 23:19:38 GMT</pubDate><guid isPermaLink="false">Source code checked in, #14588 20080818111938P</guid></item><item><title>New Post: TabGroupPaneRegionAdapter</title><link>http://www.codeplex.com/CompositeWPFContrib/Thread/View.aspx?ThreadId=33209</link><description>&lt;div style="line-height: normal;"&gt;Hi Matt,&lt;br&gt;
&lt;br&gt;
Just to let you know, that I elaborated further my sample and I was able to reproduce your issue. &lt;br&gt;
To solve I will need to extend the TabGroupPaneRegionAdapter behaviors to consider the case when a ContentPane is closed. &lt;br&gt;
&lt;br&gt;
I will keep you posted.&lt;br&gt;
&lt;br&gt;
Thanks,&lt;br&gt;
Claudio. &lt;br&gt;
&lt;/div&gt;</description><author>cpi</author><pubDate>Tue, 12 Aug 2008 18:08:44 GMT</pubDate><guid isPermaLink="false">New Post: TabGroupPaneRegionAdapter 20080812060844P</guid></item><item><title>Updated Wiki: DSASampleCompositeWPF</title><link>http://www.codeplex.com/CompositeWPFContrib/Wiki/View.aspx?title=DSASampleCompositeWPF&amp;version=2</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;
Disconnected Service Agent sample with CompositeWPF
&lt;/h1&gt;All the &lt;b&gt;Offline Blocks&lt;/b&gt; (&lt;b&gt;Disconnected Service Agent&lt;/b&gt;, &lt;b&gt;Endpoint Catalog&lt;/b&gt; and &lt;b&gt;Connection Monitor&lt;/b&gt;) shipped with &lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=2b6a10f9-8410-4f13-ad53-05a202fbdb63&amp;amp;displaylang=en" class="externalLink"&gt;SCSF - May 2007&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; and higher versions do not have dependencies on &lt;b&gt;CAB/SCSF&lt;/b&gt;.&lt;br /&gt;To be able to use those blocks in a Composite WPF application you can do the following:&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;Add the following configuration to the &lt;b&gt;App.config&lt;/b&gt; file to configure the connection monitor and select the data storage that will be consumed by the &lt;b&gt;DSA&lt;/b&gt;: &lt;/li&gt;
&lt;/ul&gt;&lt;pre&gt;
&amp;lt;configuration&amp;gt;
  &amp;lt;configSections&amp;gt;
    &amp;lt;section name=&amp;quot;ConnectionMonitor&amp;quot;
             type=&amp;quot;Microsoft.Practices.SmartClient.ConnectionMonitor.Configuration.ConnectionSettingsSection, Microsoft.Practices.SmartClient.ConnectionMonitor&amp;quot; /&amp;gt;
    &amp;lt;section name=&amp;quot;dataConfiguration&amp;quot;
             type=&amp;quot;Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data&amp;quot; /&amp;gt;
  &amp;lt;/configSections&amp;gt;
  &amp;lt;connectionStrings&amp;gt;
    &amp;lt;add name=&amp;quot;QueueDatabase&amp;quot; connectionString=&amp;quot;YourConnectionString&amp;quot; providerName=&amp;quot;YourProvider&amp;quot; /&amp;gt;
  &amp;lt;/connectionStrings&amp;gt;
  &amp;lt;ConnectionMonitor&amp;gt;
    &amp;lt;Networks&amp;gt;
      &amp;lt;!-- To check for internet connectivity--&amp;gt;
      &amp;lt;add Name=&amp;quot;Internet&amp;quot; Address=&amp;quot;http://www.google.com&amp;quot; /&amp;gt;
    &amp;lt;/Networks&amp;gt;
  &amp;lt;/ConnectionMonitor&amp;gt;
  &amp;lt;dataConfiguration defaultDatabase=&amp;quot;QueueDatabase&amp;quot;&amp;gt;
    &amp;lt;providerMappings&amp;gt;
      &amp;lt;add databaseType=&amp;quot;Microsoft.Practices.SmartClient.EnterpriseLibrary.SmartClientDatabase, Microsoft.Practices.SmartClient.EnterpriseLibrary&amp;quot;
           name=&amp;quot;System.Data.SqlServerCe&amp;quot; /&amp;gt;
    &amp;lt;/providerMappings&amp;gt;
  &amp;lt;/dataConfiguration&amp;gt;
&amp;lt;/configuration&amp;gt; 
&lt;/pre&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;Set up the &lt;b&gt;Request Manager&lt;/b&gt; by overriding the &lt;b&gt;ConfigureContainer&lt;/b&gt; method of your application's &lt;b&gt;Bootstrapper&lt;/b&gt; class.&lt;/li&gt;
&lt;/ul&gt;&lt;pre&gt;
protected override void ConfigureContainer()
{
    // Set up request manager.
    RequestManager requestManager = DatabaseRequestManagerIntializer.Initialize();
    requestManager.StartAutomaticDispatch();
 
    // Add the request queue to the Container. This queue will be used by service agents to enqueue requests.
    Container.RegisterInstance&amp;lt;IRequestQueue&amp;gt;(requestManager.RequestQueue, new ContainerControlledLifetimeManager());
 
    // Add the connection monitor to the Container. It will be used to determine connectivity status and provide    // feedback to the user accordingly.
    Container.RegisterInstance&amp;lt;IConnectionMonitor&amp;gt;(requestManager.ConnectionMonitor, new ContainerControlledLifetimeManager());
 
    base.ConfigureContainer();
} 
&lt;/pre&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;Create an &lt;b&gt;Agent&lt;/b&gt; service class that uses the &lt;b&gt;IRequestQueue&lt;/b&gt; to define the offline behavior of your web service (in SCSF this is performed by the &lt;a href="http://msdn.microsoft.com/en-us/library/cc540833.aspx" class="externalLink"&gt;Create a Disconnected Service Agent recipe&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;).&lt;/li&gt;&lt;li&gt;Register an instance of your &lt;b&gt;Agent&lt;/b&gt; class into your container. You can do this in your &lt;b&gt;Module&lt;/b&gt; class. &lt;/li&gt;
&lt;/ul&gt;&lt;pre&gt;
public void Initialize()
{
    RegisterTypesAndServices();
 
    // Add your module views...
}
 
private void RegisterTypesAndServices()
{
    Container.RegisterType&amp;lt;Agent&amp;gt;(new ContainerControlledLifetimeManager());
} 
&lt;/pre&gt; &lt;br /&gt;&lt;b&gt;Now you are able to inject your service agent in your classes.&lt;/b&gt;&lt;br /&gt; &lt;br /&gt;More information on &lt;a href="http://blogs.southworks.net/mconverti/2008/08/11/composite-wpf-with-dsa-sample/" class="externalLink"&gt;How-to: Use the Disconnected Service Agent (DSA) with CompositeWPF (Prism)&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;</description><author>mconverti</author><pubDate>Tue, 12 Aug 2008 14:25:07 GMT</pubDate><guid isPermaLink="false">Updated Wiki: DSASampleCompositeWPF 20080812022507P</guid></item><item><title>Updated Wiki: DSASampleCompositeWPF</title><link>http://www.codeplex.com/CompositeWPFContrib/Wiki/View.aspx?title=DSASampleCompositeWPF&amp;version=1</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;
Disconnected Service Agent sample with CompositeWPF
&lt;/h1&gt; &lt;br /&gt;&lt;b&gt;*Coming soon*&lt;/b&gt;&lt;br /&gt; &lt;br /&gt;More information on &lt;a href="http://blogs.southworks.net/mconverti/2008/08/11/composite-wpf-with-dsa-sample/" class="externalLink"&gt;How-to: Use the Disconnected Service Agent (DSA) with CompositeWPF (Prism)&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;</description><author>ejadib</author><pubDate>Tue, 12 Aug 2008 12:03:24 GMT</pubDate><guid isPermaLink="false">Updated Wiki: DSASampleCompositeWPF 20080812120324P</guid></item><item><title>Updated Wiki: Documentation</title><link>http://www.codeplex.com/CompositeWPFContrib/Wiki/View.aspx?title=Documentation&amp;version=5</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;
Documentation
&lt;/h1&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.codeplex.com/CompositeWPFContrib/Wiki/View.aspx?title=PrismAG&amp;amp;referringTitle=Documentation"&gt;PrismAG&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/CompositeWPFContrib/Wiki/View.aspx?title=OutlookBar&amp;amp;referringTitle=Documentation"&gt;OutlookBar&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/CompositeWPFContrib/Wiki/View.aspx?title=CompositeModuleEnumerator&amp;amp;referringTitle=Documentation"&gt;Composite Module Enumerator&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/CompositeWPFContrib/Wiki/View.aspx?title=Module%20Status%20Service&amp;amp;referringTitle=Documentation"&gt;Module Status Service&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/CompositeWPFContrib/Wiki/View.aspx?title=Extended%20Module%20Service&amp;amp;referringTitle=Documentation"&gt;Extended Module Loader Service&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/CompositeWPFContrib/Wiki/View.aspx?title=VisualStudioTemplates&amp;amp;referringTitle=Documentation"&gt;Visual Studio Templates&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/CompositeWPFContrib/Wiki/View.aspx?title=InfragisticsExtensions&amp;amp;referringTitle=Documentation"&gt;Infragistics Extensions&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/CompositeWPFContrib/Wiki/View.aspx?title=DSASampleCompositeWPF&amp;amp;referringTitle=Documentation"&gt;DSA Sample with CompositeWPF&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;</description><author>ejadib</author><pubDate>Tue, 12 Aug 2008 12:01:08 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Documentation 20080812120108P</guid></item><item><title>Updated Wiki: Home</title><link>http://www.codeplex.com/CompositeWPFContrib/Wiki/View.aspx?title=Home&amp;version=28</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;
Welcome to the Composite WPF Contrib project
&lt;/h1&gt; &lt;br /&gt;Composite WPF Contrib is a community-developed library of extensions to the patterns &amp;amp; practices &lt;a href="/CompositeWPF" class="externalLink"&gt;Composite WPF project&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;. &lt;br /&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;If you are building custom tools and extensions and want to share them then Composite WPF Contrib will get it out to the masses.&lt;/li&gt;&lt;li&gt;If you've got a great idea for new extensions Composite WPF contrib is the place to find developers ready, willing, and able to make it happen.&lt;/li&gt;&lt;li&gt;If you use Composite WPF within your org, then Composite WPF Contrib is the place to find tools and extensions to add to your arsenal.&lt;/li&gt;&lt;li&gt;If you want to connect with others who are pushing the bar on Prism development, then Prism Contrib is the place to be.&lt;/li&gt;
&lt;/ul&gt;Prism contrib is about &lt;b&gt;YOU&lt;/b&gt;. With &lt;b&gt;your&lt;/b&gt; help we can make it a vibrant resource for WPF Composite developers world-wide.&lt;br /&gt; &lt;br /&gt;&lt;h3&gt;
News
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;(2008-08-11) &lt;b&gt;New Sample&lt;/b&gt;&lt;/li&gt;&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Sample application&lt;/b&gt; that demonstrate how to use the Disconnected Service Agent Application Block with CompositeWPF&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;&lt;img src="http://www.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=CompositeWPFContrib&amp;amp;DownloadId=41210" alt="dsa.png" /&gt;&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;(2008-07-31) &lt;b&gt;New Extensions&lt;/b&gt;&lt;/li&gt;&lt;ul&gt;
&lt;li&gt;&lt;b&gt;TabGroupPaneRegionAdapter&lt;/b&gt;. Infragistics TabGroupPane Region Adapter for CompositeWPF&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;&lt;img src="http://www.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=CompositeWPFContrib&amp;amp;DownloadId=40287" alt="TabGroupPaneRegionAdapterMedium.jpg" /&gt;&lt;br /&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;(2008-07-25) &lt;b&gt;New Extensions&lt;/b&gt;&lt;/li&gt;&lt;ul&gt;
&lt;li&gt;&lt;b&gt;ExtendedModuleLoaderService&lt;/b&gt;. Extended module loader service with support to install modules on demand using windows installer&lt;/li&gt;
&lt;/ul&gt;&lt;li&gt;(2008-07-21) &lt;b&gt;New Extensions&lt;/b&gt;&lt;/li&gt;&lt;ul&gt;
&lt;li&gt;&lt;b&gt;OutlookBar&lt;/b&gt;. OutlookBar control and region adapter for CompositeWPF&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;&lt;img src="http://www.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=CompositeWPFContrib&amp;amp;DownloadId=39481" alt="outlookbar.png" /&gt;&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;(2008-07-17) &lt;b&gt;New Extensions&lt;/b&gt;&lt;/li&gt;&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Module Status Service&lt;/b&gt;. The Module Status Service can be used to retrieve information about what modules are loaded&lt;/li&gt;
&lt;/ul&gt;&lt;li&gt;(2008-07-11) &lt;b&gt;New Extensions&lt;/b&gt;&lt;/li&gt;&lt;ul&gt;
&lt;li&gt;&lt;b&gt;CompositeModuleEnumerator&lt;/b&gt;. The CompositeModuleEnumerator makes it possible to combine several module enumerator instances into one module enumerator.&lt;/li&gt;&lt;li&gt;&lt;b&gt;ToolBarPanelRegionAdapter&lt;/b&gt;. This adapter adapts control of type &lt;b&gt;System.Windows.Controls.Primitives.ToolBarPanel&lt;/b&gt; and derived classes.&lt;/li&gt;
&lt;/ul&gt;&lt;li&gt;(2008-07-08) &lt;b&gt;New Visual Studio Templates&lt;/b&gt;. The goal of these templates is to help users start with the &lt;a href="/CompositeWPF" class="externalLink"&gt;Composite WPF project&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;. &lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h3&gt;
What's in Prism Contrib?
&lt;/h3&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;PrismAG - Composite WPF for Silverlight &lt;/li&gt;&lt;li&gt;OutlookBar - OutlookBar control and region adapter for CompositeWPF &lt;/li&gt;&lt;li&gt;CompositeModuleEnumerator - Composite Module Enumerator&lt;/li&gt;&lt;li&gt;Module Status Service - A service that can be used to retrieve information about what modules are loaded&lt;/li&gt;&lt;li&gt;Extended Module Service - An extended module loader service with support to install modules on demand using windows installer&lt;/li&gt;&lt;li&gt;Visual Studio Templates&lt;/li&gt;&lt;li&gt;Composite WPF Extensions - Add-on commands, services, regions, etc to aid you in your Composite WPF development&lt;/li&gt;&lt;li&gt;Infragistics Extensions - Infragistics Extensions for CompositeWPF&lt;/li&gt;&lt;li&gt;Samples&lt;/li&gt;
&lt;/ul&gt;See the &lt;a href="http://www.codeplex.com/CompositeWPFContrib/Wiki/View.aspx?title=Documentation&amp;amp;referringTitle=Home"&gt;Documentation&lt;/a&gt; index for information on how to use each of these extensions and components.&lt;br /&gt; &lt;br /&gt;&lt;h3&gt;
Contributing to Composite WPF Contrib
&lt;/h3&gt;Would you like to join as a developer of the Composite WPF Contrib project to share your own extensions or improve the existing codebase? Great! Here is what you need to know&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.codeplex.com/entlibcontrib/Wiki/View.aspx?title=About%20p%26p%20%22Contrib%22%20projects&amp;amp;referringTitle=Home" class="externalLink"&gt;About p&amp;amp;p &amp;quot;Contrib&amp;quot; projects&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/CompositeWPFContrib/Wiki/View.aspx?title=Guidelines%20for%20Composite%20WPF%20Contrib%20code&amp;amp;referringTitle=Home"&gt;Guidelines for Composite WPF Contrib code&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/CompositeWPFContrib/Wiki/View.aspx?title=Sign%20Up%20Process&amp;amp;referringTitle=Home"&gt;Sign Up Process&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;h3&gt;
Other p&amp;amp;p Contrib Projects
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="/scsfcontrib" class="externalLink"&gt;Smart Client Contrib&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="/wcsfcontrib" class="externalLink"&gt;Web Client Software Factory Contrib&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="/entlibcontrib" class="externalLink"&gt;Enterprise Library Contrib&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;</description><author>ejadib</author><pubDate>Tue, 12 Aug 2008 11:58:06 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Home 20080812115806A</guid></item><item><title>Source code checked in, #14209</title><link>http://www.codeplex.com/CompositeWPFContrib/SourceControl/ListDownloadableCommits.aspx</link><description>&amp;#35; added sample that demonstrate how to use the Disconnected Service Agent Application Block with CompositeWPF</description><author>ejadib</author><pubDate>Tue, 12 Aug 2008 01:45:00 GMT</pubDate><guid isPermaLink="false">Source code checked in, #14209 20080812014500A</guid></item></channel></rss>