Hello,
I hava the following problem: There is a already defined SCSF in which Shell and Layout are separated projects. I'm trying to use UltraToolbarManager in the project like Ribbon. I put need references to Infragistics.Practices.CompositeUI.WinForms. After that I change inheritance of SmartClientApplication from FormShellApplication<TWorkItem, TShell> to IGFormShellApplication<TWorkItem, TShell> in the library project. Next step was to insert UltraToolbarManager in ShellForm because it need to be on the top of the hierarchy, and not allow me to put the control in the ShellLayoutView. After that I add following lines in ShellForm to register UltraToolbarManager :
RootWorkItem.UIExtensionSites.RegisterSite("ribbon", this.Shell.UltraToolbarsManager.Ribbon); // Register the ultraToolbarsManager1's RibbonTabs collection RootWorkItem.UIExtensionSites.RegisterSite("ribbonTabs", this.Shell.UltraToolbarsManager.Ribbon.Tabs); // Now create a Ribbon Tab and add it to the ribbonTabs collection RibbonTab newRibbonTab = new RibbonTab("ribbonTab1", "Ribbon Tab 1"); RootWorkItem.UIExtensionSites["ribbonTabs"].Add<RibbonTab>(newRibbonTab); // Now register newRibbonTab's Groups collection RootWorkItem.UIExtensionSites.RegisterSite("ribbonTab1Groups", newRibbonTab.Groups);
When I finish with this I try to build the solution and the following error appears:
The type 'Microsoft.Practices.CompositeUI.WinForms.WindowsFormsApplication`2<T0,T1>' is defined in an assembly that is not referenced. You must add a reference to assembly 'Microsoft.Practices.CompositeUI.WinForms, Version=1.0.51205.0, Culture=neutral, PublicKeyToken=null'. C:\Documents and Settings\dimo.kapnilov\Desktop\SmartClientDevelopmentSolution4\Source\Infrastructure\Infrastructure.Library\SmartClientApplication.cs 25 27 Infrastructure.Library.
I can't understand why it is looking for Microsoft.Practices.CompositeUI.WinForm, and actually I have reference to this assembly. I will be very thankful if somebody can help to resolve this problem.
smartgen said:I can't understand why it is looking for Microsoft.Practices.CompositeUI.WinForm
Infragistics.Practices.CompositeUI.WinForms extends the Microsoft.Practices.CompositeUI.WinForm, that is why you need both.
The error you are receiving is thrown because your referenced CompositeUI libraries (Microsoft.Practices.CompositeUI.dll, Microsoft.Practices.CompositeUI.WinForms.dll, Microsoft.Practices.ObjectBuilder.dll) are from a different build than the ones used to build the Infragistics.Practices.CompositeUI.WinForms. You should reference the ones you can find in the bin\debug (I guess) folder where the Infragistics.Practices.CompositeUI.WinForms was built.
HTH,
Emanuel
Seems like you took all the necessary steps. Not sure if you saw the Knowledge Base article in using the ribbon but here's the link:
http://devcenter.infragistics.com/Support/KnowledgeBaseArticle.aspx?ArticleID=10042
Here is also a Knowledge Base on how to use the NetAdvantage Cab Extensibility Kit:
http://devcenter.infragistics.com/Support/KnowledgeBaseArticle.aspx?ArticleID=10077
As far as the error is concerned, it may be due to the different versions of SCSF, May 07 vs June 06 (i forget the actual versions). But you may want to recompile your Infragistics.Practices.CompositeUI.WinForms dll making sure they reference the correct dlls installed on your machine.