Smart Client: Composite UI Application Block
Managing the Parts
Part of the appeal of the CAB is being able to adapt the application to fit the needs of the user. SmartParts can be loaded programmatically. The CAB will load modules based on the contents of the ProfileCatalog.xml file. A module is a collection of components (WorkItems, services, and so forth) that are needed when performing a certain task or assuming a specific role in the application. It is also possible to enable the application to load SmartParts based on custom configuration settings in an XML or other means of configuration. This allows you to adapt the UI and load modules based on criteria such as user roles. For example, the UI could load a shop floor console, manager console, and administrator console based on the current user's assigned permissions.
Items of Interest
The following additional information should assist you in your endeavors with the Composite UI Application Block:
- Hands-on labs: Free training content for the CAB. This contains in-depth detail about the contents of the CAB, including descriptions of the sample applications that are included.
- Community Site: Public site targeted at helping CAB users.
- Smart Client Software Factory: See below for more information.
Smart Client Software Factory (SCSF)
Although we didn't show source code, you have learned about the CAB at a very high level that has been so graciously shared by the Microsoft Patterns and Practices group. It allows you to create Windows Forms-based applications that have sophisticated capability without being as sophisticated to create.
The topic of the next column is yet to be determined. If you have something in particular that you would like to see explained here, you could reach me at email@example.com.
About the Authors
Mark Strawmyer, MCSD, MCSE, MCDBA is a Senior Architect of .NET applications for large and mid-size organizations. Mark is a technology leader with Crowe Chizek in Indianapolis, Indiana. He specializes in architecture, design, and development of Microsoft-based solutions. Mark was honored to be named a Microsoft MVP for application development with C# for the third year in a row. You can reach Mark at firstname.lastname@example.org.
Rachel Wireman is a developer of applications for large and mid-size organizations. She specializes in the development of Smart Client applications. Rachel is with Crowe Chizek in Oak Brook, Illinois and contributed to the examples within the article. You can reach Rachel at email@example.com.
Page 2 of 2