Programming Microsoft Composite Ui Application Block - And Smart Client Software Factory
Example: closing all SmartParts
public interface IOrderView
Infrastructure.Module.dll ├── Interfaces (services, views) ├── Constants (topic names, command names) ModuleA.dll ├── Views (IView, View) ├── Presenters (Presenter) ├── Services (concrete) ├── ModuleController.cs └── ModuleA.cs (CAB Module)
[EventPublication("topic/Save")] public event EventHandler SaveClicked; views) ├── Constants (topic names
:
static void Main()
Application.EnableVisualStyles(); var builder = new CABApplication<ShellApplication>(); builder.Run(); command names) ModuleA.dll ├── Views (IView
: The WorkItem scans all objects (views, presenters, services) for [EventPublication] and [EventSubscription] using reflection at registration time. It wires them via an internal EventTopic cache.
Desktop (Shell.exe) ├── ShellForm.cs ├── RootWorkItem ├── ShellApplication (Program.cs)
this.Workspace.CloseAll(); Workspaces also track activation and can close SmartParts via Close() . A typical SCSF solution (generated) has: : static void Main() Application.EnableVisualStyles()
// fetch customer details
string CustomerName set; event EventHandler SaveClicked;


