<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="/rss.xsl"?><rss version="2.0"><channel><title>ioc Discussions Rss Feed</title><link>http://ioc.codeplex.com/Thread/List.aspx</link><description>ioc Discussions Rss Description</description><item><title>New Post: At Workspace Add method, SmartPart added to RootWorkItem.SmartParts already exist</title><link>http://ioc.codeplex.com/discussions/403175</link><description>&lt;div style="line-height: normal;"&gt;
&lt;p&gt;Thanks for the report.&amp;nbsp; I've included this fix in my latest check-in (earlier today).&lt;/p&gt;
&lt;/div&gt;</description><author>ctacke</author><pubDate>Mon, 19 Nov 2012 18:50:08 GMT</pubDate><guid isPermaLink="false">New Post: At Workspace Add method, SmartPart added to RootWorkItem.SmartParts already exist 20121119065008P</guid></item><item><title>New Post: At Workspace Add method, SmartPart added to RootWorkItem.SmartParts already exist</title><link>http://ioc.codeplex.com/discussions/403175</link><description>&lt;div style="line-height: normal;"&gt;
&lt;p&gt;public void ShowControl()&lt;br&gt;
{&lt;br&gt;
// get smartpart from container&lt;br&gt;
var existingPart = RootWorkItem.SmartParts[&amp;quot;MySmartPart&amp;quot;];&lt;br&gt;
&lt;br&gt;
// if we called &amp;quot;Close&amp;quot; on the SmartPart, it will no longer be in the collection&lt;br&gt;
if (existingPart == null)&lt;br&gt;
{ &lt;br&gt;
Debug.WriteLine(&amp;quot;Recreating 'MySmartPart'...&amp;quot;);&lt;/p&gt;
&lt;p&gt;// Addnew smartpart and ObjectFactory.DoInjections working&lt;br&gt;
existingPart = RootWorkItem.SmartParts.AddNew&amp;lt;UserControl1&amp;gt;(&amp;quot;MySmartPart&amp;quot;);&lt;br&gt;
existingPart.Name = &amp;quot;MySmartPart&amp;quot;;&lt;br&gt;
}&lt;br&gt;
&lt;br&gt;
// Show it&lt;/p&gt;
&lt;p&gt;// WorkSpace Show -&amp;gt;OnShow -&amp;gt; Add -&amp;gt; RootWorkItem.SmartParts.Add and twice &amp;nbsp;ObjectFactory.DoInjections working&lt;/p&gt;
&lt;p&gt;// if there is a EventSubcription. Event invoke twice.&lt;br&gt;
RootWorkItem.Workspaces[WorkspaceNames.Main].Show(existingPart);&lt;br&gt;
&amp;nbsp;}&lt;/p&gt;
&lt;p&gt;I Changed WorkSpace.cs&lt;/p&gt;
&lt;p&gt;/// &amp;lt;summary&amp;gt;&lt;br&gt;
/// Adds a SmartPart to the Workspace without showing it&lt;br&gt;
/// &amp;lt;/summary&amp;gt;&lt;br&gt;
/// &amp;lt;param name=&amp;quot;smartPart&amp;quot;&amp;gt;&amp;lt;/param&amp;gt;&lt;br&gt;
public virtual void Add(ISmartPart smartPart)&lt;br&gt;
{&lt;br&gt;
if (smartPart == null) throw new ArgumentNullException(&amp;quot;smartPart&amp;quot;);&lt;br&gt;
&lt;br&gt;
this.InvokeIfRequired(d =&amp;gt;&lt;br&gt;
{&lt;br&gt;
var control = smartPart as Control;&lt;br&gt;
if (control == null) throw new ArgumentException(&amp;quot;smartPart must be a Control&amp;quot;);&lt;br&gt;
&lt;br&gt;
if (!SmartParts.Contains(smartPart))&lt;br&gt;
{&lt;br&gt;
smartPart.Workspace = this;&lt;br&gt;
m_smartParts.Add(smartPart);&lt;/p&gt;
&lt;p&gt;// I added if statement&lt;br&gt;
if (!RootWorkItem.SmartParts.ContainsObject(smartPart))&lt;br&gt;
RootWorkItem.SmartParts.Add(smartPart, Guid.NewGuid().ToString());&lt;br&gt;
this.Controls.Add(control);&lt;br&gt;
}&lt;br&gt;
});&lt;br&gt;
&amp;nbsp;}&lt;/p&gt;
&lt;/div&gt;</description><author>fduzceker</author><pubDate>Wed, 14 Nov 2012 14:37:35 GMT</pubDate><guid isPermaLink="false">New Post: At Workspace Add method, SmartPart added to RootWorkItem.SmartParts already exist 20121114023735P</guid></item><item><title>New Post: Defining what concrete classes implement what interface</title><link>http://ioc.codeplex.com/discussions/402996</link><description>&lt;div style="line-height: normal;"&gt;
&lt;p&gt;I believe you're asking how can you store many instances of a specific interface in the IoC DI container, correct?&amp;nbsp; This is what the Items collection is for.&lt;/p&gt;
&lt;pre&gt;// create two items that derive from the same interface
IFoo a = new FooA();
IFoo b = new FooB();

// put them in the container. 
// use a unique name in case we want to get one by name later
// you can omit the name and IoC will give it one if you wish
RootWorkItem.Items.Add(a, &amp;quot;uidA&amp;quot;);
RootWorkItem.Items.Add(b, &amp;quot;uidB&amp;quot;);

// this will get just one item
var testA = RootWorkItem.Items.Get(&amp;quot;uidA&amp;quot;);

// this will get all items of a specific type
var foos = RootWorkItem.Items.Get();&lt;/pre&gt;
&lt;/div&gt;</description><author>ctacke</author><pubDate>Tue, 13 Nov 2012 14:54:29 GMT</pubDate><guid isPermaLink="false">New Post: Defining what concrete classes implement what interface 20121113025429P</guid></item><item><title>New Post: Defining what concrete classes implement what interface</title><link>http://ioc.codeplex.com/discussions/402996</link><description>&lt;div style="line-height: normal;"&gt;
&lt;p&gt;There is an interface called IFoo and a class called Bar that can contain 0 to many instances of IFoo.&lt;/p&gt;
&lt;p&gt;The class that implements of IFoo depends on what customer is using our product.&lt;/p&gt;
&lt;p&gt;How can class Bar create 1 to many instances of the desired implementation of IFoo&amp;nbsp;on demand?&lt;/p&gt;
&lt;p&gt;I haven't been able to find cases like this in the documentation or the example projects.&lt;/p&gt;
&lt;/div&gt;</description><author>webber55</author><pubDate>Tue, 13 Nov 2012 09:57:26 GMT</pubDate><guid isPermaLink="false">New Post: Defining what concrete classes implement what interface 20121113095726A</guid></item><item><title>New Post: KeyPreview</title><link>http://ioc.codeplex.com/discussions/238139</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;The latest change set (just checked in) fixes the issue.&amp;nbsp; It was due to the SmartPart not getting Focused when it was activated.&lt;/p&gt;&lt;/div&gt;</description><author>ctacke</author><pubDate>Fri, 21 Sep 2012 18:00:39 GMT</pubDate><guid isPermaLink="false">New Post: KeyPreview 20120921060039P</guid></item><item><title>New Post: KeyPreview</title><link>http://ioc.codeplex.com/discussions/238139</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;I had the same issue. &amp;nbsp;&lt;/p&gt;
&lt;p&gt;It can be reproduced by adding key events to the controls in any of the sample projects, where this issue occurs also.&lt;span style="white-space: pre;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/div&gt;</description><author>webber55</author><pubDate>Mon, 17 Sep 2012 15:04:20 GMT</pubDate><guid isPermaLink="false">New Post: KeyPreview 20120917030420P</guid></item><item><title>New Post: Build 1.0.12221 is broken for MonoTouch.IoC project.</title><link>http://ioc.codeplex.com/discussions/395189</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;I've not rebuild for MonoTouch real recently - largely because it means I have to get out the MacBook&amp;nbsp;to do&amp;nbsp;the build.&amp;nbsp; All of the source is there and should be compatible (it all works with Mono for Android), so you should be able to just "add existing items" to get it building again.&amp;nbsp; I'll look at getting the MonoTouch project files in the repository updated later in the week.&lt;/p&gt;&lt;/div&gt;</description><author>ctacke</author><pubDate>Wed, 12 Sep 2012 14:40:29 GMT</pubDate><guid isPermaLink="false">New Post: Build 1.0.12221 is broken for MonoTouch.IoC project. 20120912024029P</guid></item><item><title>New Post: Build 1.0.12221 is broken for MonoTouch.IoC project.</title><link>http://ioc.codeplex.com/discussions/395189</link><description>&lt;div style="line-height: normal;"&gt;
&lt;p&gt;Hello,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Last night I have took last binaries and have not found any binary files for MonoTouch/IPhone , I also have not found any example which I can use this framework for IPhone using MonoTouch. So I took last sources and tried to build it on MacOS. I used OpenNETCF.MonoTouch.IoC
 project but unfortunately some files are missed, such as &amp;quot;Guard.cs&amp;quot; and &amp;quot;GenericEventArgs.cs&amp;quot;. For &amp;nbsp;the previous build 1.0.11235 we have the same problem: file &amp;quot;GenericEventArgs.cs&amp;quot; is missed.&amp;nbsp;&lt;br&gt;
Using commit history I have found this 69860 by ctacke&amp;nbsp;&lt;br&gt;
Associated with Release: Build 1.0.12221. Verified build success for FFx, CF, Mono and WinPhone&lt;br&gt;
May be it's my mistake and I am doing something wrong?&lt;br&gt;
It will be very helpfull to have some simple example for iOS platform.&lt;/p&gt;
&lt;p&gt;Thanks.&lt;/p&gt;
&lt;/div&gt;</description><author>sergii_iefimov</author><pubDate>Tue, 11 Sep 2012 20:33:00 GMT</pubDate><guid isPermaLink="false">New Post: Build 1.0.12221 is broken for MonoTouch.IoC project. 20120911083300P</guid></item><item><title>New Post: WifiSurvey application broken</title><link>http://ioc.codeplex.com/discussions/218286</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;I just verified that it runs fine for me.&amp;nbsp; The exception you're seeing indicates that the AccessPointPresenter cannot be created because the DI container does not hold an IAPMonitorService instance.&amp;nbsp; This means that the WifiSurvey.Infrastructure.Module module was probably not loaded.&amp;nbsp; This is common if it's not deployed with the app.&amp;nbsp; Put a break point in Module.cs, line 18 or so and I bet it never gets hit.&lt;/p&gt;&lt;/div&gt;</description><author>ctacke</author><pubDate>Wed, 05 Sep 2012 14:03:01 GMT</pubDate><guid isPermaLink="false">New Post: WifiSurvey application broken 20120905020301P</guid></item><item><title>New Post: WifiSurvey application broken</title><link>http://ioc.codeplex.com/discussions/218286</link><description>&lt;div style="line-height: normal;"&gt;
&lt;p&gt;I downloaded the sample applications and have also tried to run the sample WiFiSurvery solution. &amp;nbsp;I also get the above exception. &amp;nbsp;I googled the exception message and found this page. &amp;nbsp;The stack trace is below.&lt;/p&gt;
&lt;p&gt;OpenNETCF.IoC.ServiceMissingException was unhandled&lt;/p&gt;
&lt;p&gt;&amp;nbsp; Message=&amp;quot;Type 'AccessPointPresenter' has a service dependency on type 'IAPMonitorService'&amp;quot;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; StackTrace:&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at OpenNETCF.IoC.ObjectFactory.DoInjections(Object instance, WorkItem root)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at OpenNETCF.IoC.ManagedObjectCollection`1.Add(Object item, String id, Boolean expectNullId)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at OpenNETCF.IoC.ManagedObjectCollection`1.AddNew(Type typeToBuild, String id, Boolean expectNullId, Boolean wrapDisposables)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at OpenNETCF.IoC.ManagedObjectCollection`1.AddNew(Type typeToBuild, String id)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at OpenNETCF.IoC.ManagedObjectCollection`1.AddNew[TTypeToBuild](String id)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at WiFiSurvey.Shell.Views.APListView..ctor()&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at System.Reflection.RuntimeConstructorInfo.InternalInvoke(RuntimeConstructorInfo rtci, BindingFlags invokeAttr, Binder binder, Object parameters, CultureInfo culture, Boolean isBinderDefault, Assembly caller, Boolean
 verifyAccess, StackCrawlMark&amp;amp; stackMark)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at System.Reflection.RuntimeConstructorInfo.Invoke(BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at System.Reflection.ConstructorInfo.Invoke(Object[] parameters)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at OpenNETCF.IoC.ObjectFactory.CreateObject(Type t, WorkItem root)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at OpenNETCF.IoC.ManagedObjectCollection`1.AddNew(Type typeToBuild, String id, Boolean expectNullId, Boolean wrapDisposables)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at OpenNETCF.IoC.ManagedObjectCollection`1.AddNew(Type typeToBuild, String id)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at OpenNETCF.IoC.ManagedObjectCollection`1.AddNew[TTypeToBuild](String id)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at WiFiSurvey.Shell.ContainerForm..ctor()&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at System.Reflection.RuntimeConstructorInfo.InternalInvoke(RuntimeConstructorInfo rtci, BindingFlags invokeAttr, Binder binder, Object parameters, CultureInfo culture, Boolean isBinderDefault, Assembly caller, Boolean
 verifyAccess, StackCrawlMark&amp;amp; stackMark)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at System.Reflection.RuntimeConstructorInfo.Invoke(BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at System.Reflection.ConstructorInfo.Invoke(Object[] parameters)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at OpenNETCF.IoC.ObjectFactory.CreateObject(Type t, WorkItem root)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at OpenNETCF.IoC.ManagedObjectCollection`1.AddNew(Type typeToBuild, String id, Boolean expectNullId, Boolean wrapDisposables)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at OpenNETCF.IoC.ManagedObjectCollection`1.AddNew(Type typeToBuild)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at OpenNETCF.IoC.ManagedObjectCollection`1.AddNew[TTypeToBuild]()&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at OpenNETCF.IoC.UI.SmartClientApplication`1.Start(IModuleInfoStore store)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at OpenNETCF.IoC.UI.SmartClientApplication`1.Start()&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at WiFiSurvey.Shell.Program.Main()&lt;/p&gt;
&lt;/div&gt;</description><author>webber55</author><pubDate>Wed, 05 Sep 2012 12:10:55 GMT</pubDate><guid isPermaLink="false">New Post: WifiSurvey application broken 20120905121055P</guid></item><item><title>New Post: How to correctly Dispose SmartPart from Workspace</title><link>http://ioc.codeplex.com/discussions/347367</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;First, sorry for my delayed reply.&amp;nbsp; I've been busy with the ORM project and some other things.&lt;/p&gt;
&lt;p&gt;Vincent, yes, you're right.&amp;nbsp; The Dispose was redundant, and the ActiveSmartPart should be getting cleared.&amp;nbsp; I've checked in changes for these and updated the WorkspaceDisposal sample app to show valid Closing of a SmartPart.&lt;/p&gt;
&lt;p&gt;Marco, yes, the project is still active.&amp;nbsp; There isn't a lot of activity in the code base because I think the library is pretty mature.&amp;nbsp; If there are missing features, I'd be happy to add them, but we currently use IoC in all of our commercial products, so it's heavily used across many platforms.&amp;nbsp; I've updated the SmartPartTests app to better handle when a SmartPart is Disposed.&amp;nbsp; I'm not having any trouble running it multiple times.&lt;/p&gt;&lt;/div&gt;</description><author>ctacke</author><pubDate>Tue, 07 Aug 2012 14:26:15 GMT</pubDate><guid isPermaLink="false">New Post: How to correctly Dispose SmartPart from Workspace 20120807022615P</guid></item><item><title>New Post: How to correctly Dispose SmartPart from Workspace</title><link>http://ioc.codeplex.com/discussions/347367</link><description>&lt;div style="line-height: normal;"&gt;
&lt;p&gt;Hi everibody, is this project still alive ?&lt;/p&gt;
&lt;p&gt;I'm facing the same problem as Vincent :&lt;/p&gt;
&lt;p&gt;Can't understand how to add again a smartpart previously closed (which remains 'IsDisposed=True' as ActiveSmartPart).&lt;/p&gt;
&lt;p&gt;I'm not able to run twice the SmartPartTests sample, too.&lt;/p&gt;
&lt;p&gt;Any suggestion ?&lt;/p&gt;
&lt;p&gt;Thanks&lt;/p&gt;
&lt;p&gt;Marco&lt;/p&gt;
&lt;/div&gt;</description><author>mcNETCF</author><pubDate>Thu, 21 Jun 2012 08:56:38 GMT</pubDate><guid isPermaLink="false">New Post: How to correctly Dispose SmartPart from Workspace 20120621085638A</guid></item><item><title>New Post: How to correctly Dispose SmartPart from Workspace</title><link>http://ioc.codeplex.com/discussions/347367</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;Hi Chris,&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Still a little question. It seems that it's still not enough. Indeed, in Workspace.Close method, the smartpart I want to release is correctly removed and disposed (even twice), but it's still referenced as the ActiveSmartPart so when I try to display an  other smartpart, it throws the ObjectDisposedException when in the Activate() method the framework find that the new smartpart is not the Active one, so he think it should DeActivate the Active one but it's the one he previously Remove, Closed and Disposed.&lt;/p&gt;
&lt;p&gt;So I think that the Workspace.Close method should DeActivate the View and the DeActivate should make ActiveSmartPart to a null value.&lt;/p&gt;
&lt;p&gt;Any comments ?&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Here's a simple repro :&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;div style="color: black; background-color: white;"&gt;
&lt;pre&gt;    &lt;span style="color: blue;"&gt;public&lt;/span&gt; &lt;span style="color: blue;"&gt;partial&lt;/span&gt; &lt;span style="color: blue;"&gt;class&lt;/span&gt; Form1 : Form
    {
        &lt;span style="color: blue;"&gt;private&lt;/span&gt; Workspace wks = &lt;span style="color: blue;"&gt;new&lt;/span&gt; Workspace();
        &lt;span style="color: blue;"&gt;private&lt;/span&gt; SmartPart spA = &lt;span style="color: blue;"&gt;new&lt;/span&gt; SmartPart();
        &lt;span style="color: blue;"&gt;private&lt;/span&gt; SmartPart spB = &lt;span style="color: blue;"&gt;new&lt;/span&gt; SmartPart();

        &lt;span style="color: blue;"&gt;public&lt;/span&gt; Form1()
        {
            InitializeComponent();
            Controls.Add(wks);
            RootWorkItem.Workspaces.Add(wks);
            wks.Show(spA);
            wks.Close(spA);
            wks.Show(spB);
        }
    }
&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;As the Workspace.ActiveSmartPart has a private set I have no way with the framework to Dispose a SmartPart a soon as I don't need it anymore&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;What's your opinion ?&lt;/p&gt;&lt;/div&gt;</description><author>vramona</author><pubDate>Tue, 06 Mar 2012 06:44:12 GMT</pubDate><guid isPermaLink="false">New Post: How to correctly Dispose SmartPart from Workspace 20120306064412A</guid></item><item><title>New Post: How to correctly Dispose SmartPart from Workspace</title><link>http://ioc.codeplex.com/discussions/347367</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;Thanks Chris for your reply&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;That's what I was looking for inside the source code.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;So I've got a question : in OpenNETCF.IoC.UI.Workspace, inside OnClose(ISmartPart smartPart) method, at the end it's coded&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; RootWorkItem.SmartParts.Remove(smartPart);&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; smartPart.Dispose();&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I think its redundant because in the Remove method of ManagedObjectCollection, IDisposable object are Disposed.&lt;/p&gt;
&lt;p&gt;Finally I used Close in my application because, just calling Dispose cause runtime error on device when Showing another smartPart 'cause the IoC.UI Fwk try to make the disposed (but not removed) smartPart not visible.&lt;/p&gt;
&lt;p&gt;Vincent&lt;/p&gt;&lt;/div&gt;</description><author>vramona</author><pubDate>Mon, 05 Mar 2012 17:37:51 GMT</pubDate><guid isPermaLink="false">New Post: How to correctly Dispose SmartPart from Workspace 20120305053751P</guid></item><item><title>New Post: How to correctly Dispose SmartPart from Workspace</title><link>http://ioc.codeplex.com/discussions/347367</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;You can call Dispose() as you would normally, but it is important to *remove* the item from the DI container before doing so, otherwise you'll end up getting an ObjectDisposedException when the framework tries to use the Disposed item.&amp;nbsp; This is probably a scenario I should add better support for, as right now the general assumption is that you'll create the object, but never remove it.&lt;/p&gt;&lt;/div&gt;</description><author>ctacke</author><pubDate>Mon, 05 Mar 2012 16:36:14 GMT</pubDate><guid isPermaLink="false">New Post: How to correctly Dispose SmartPart from Workspace 20120305043614P</guid></item><item><title>New Post: How to correctly Dispose SmartPart from Workspace</title><link>http://ioc.codeplex.com/discussions/347367</link><description>&lt;div style="line-height: normal;"&gt;
&lt;p&gt;What's the correct way to Dispose Views (smartparts) shown in DeckWorkspaces ?&lt;/p&gt;
&lt;p&gt;Calling Dispose raise some errors at Runtime?&lt;/p&gt;
&lt;p&gt;not Calling it means not disposing at all.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Do I need to use Close or DeActivate ?&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;What's the better way to do it ?&lt;/p&gt;
&lt;/div&gt;</description><author>vramona</author><pubDate>Mon, 05 Mar 2012 16:27:24 GMT</pubDate><guid isPermaLink="false">New Post: How to correctly Dispose SmartPart from Workspace 20120305042724P</guid></item><item><title>New Post: Improved support for WorkItems?</title><link>http://ioc.codeplex.com/discussions/342136</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;My original intention was to use the status of a WorkItem to control flow through individual use cases. However, after further investigation of SCSF, I realized that a SmartPart activates its parent WorkItem, even if you use the SmartPart from a different WorkItem. Our application currently has 1 DeckWorkspace and 50+ SmartParts, some of which are used in multiple workflows, meaning my original approach isn't going to work. I found an alternative solution but wanted to say thanks for the&amp;nbsp;IoC Framework. It's been critical to the design of our&amp;nbsp;application.&lt;/p&gt;
&lt;p&gt;klei0777&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;/div&gt;</description><author>klei0777</author><pubDate>Fri, 24 Feb 2012 19:38:51 GMT</pubDate><guid isPermaLink="false">New Post: Improved support for WorkItems? 20120224073851P</guid></item><item><title>New Post: Improved support for WorkItems?</title><link>http://ioc.codeplex.com/discussions/342136</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;You're correct that we're not trying to make IoC be a mobile version SCSF. That said, if extending WorkItes would help you do your job, then it's definitely something we can consider.&amp;nbsp; We'd need to know what type of support/extensions you'd be interested in.&amp;nbsp; If you could create a very simple desktop app that shows your usage of a WorkItem, we can eitehr work to get it working under IoC or at least point you in the right direction.&lt;/p&gt;&lt;/div&gt;</description><author>ctacke</author><pubDate>Wed, 22 Feb 2012 21:01:19 GMT</pubDate><guid isPermaLink="false">New Post: Improved support for WorkItems? 20120222090119P</guid></item><item><title>New Post: Improved support for WorkItems?</title><link>http://ioc.codeplex.com/discussions/342136</link><description>&lt;div style="line-height: normal;"&gt;
&lt;p&gt;Hi, do you have any plans to improve the support for WorkItems? There &lt;em&gt;is&lt;/em&gt; a WorkItem class in the framework, but it lacks many of the features available in SCSF on the desktop, such as the relationship between a WorkItem and it's SmartParts and the
 ability to track status. I understand that the IoC Framework is not meant to be a mobile version of SCSF, but&amp;nbsp;it would be useful to use&amp;nbsp;WorkItem for building use cases like you do in SCSF.&lt;/p&gt;
&lt;p&gt;Thanks,&lt;/p&gt;
&lt;p&gt;klei0777&lt;/p&gt;
&lt;/div&gt;</description><author>klei0777</author><pubDate>Wed, 22 Feb 2012 19:42:51 GMT</pubDate><guid isPermaLink="false">New Post: Improved support for WorkItems? 20120222074251P</guid></item><item><title>New Post: Ioc.Ui in WP7</title><link>http://ioc.codeplex.com/discussions/281512</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;I had thought about it, yes, and it's still not off the table.&amp;nbsp; The main issue is that Phone changes paradigms wildly with respect to screen creation, so it's not obvious that there are fully analogous pieces for the UI bits.&amp;nbsp; The DI Container/EventAggregation stuff all works fine, it's just&amp;nbsp;shoehorning the&amp;nbsp;Workspace/SmartPart stuff in isn't 100% clear.&amp;nbsp; Maybe a PivotWorkspace or a PanoramaWorkspace would make sense?&lt;/p&gt;&lt;/div&gt;</description><author>ctacke</author><pubDate>Thu, 01 Dec 2011 20:15:17 GMT</pubDate><guid isPermaLink="false">New Post: Ioc.Ui in WP7 20111201081517P</guid></item></channel></rss>