1 Net Designer Foundation framework
The namespace for the. NET designer infrastructure is System.ComponentModel.Design, and the three designer architectures for WF, ASP.net, and win from are all built on. NET itself provides the underlying framework.
The namespace for the WF designer frame is System.Workflow.ComponentModel.Design, and the related classes are in the namespace. Before researching WF designer, let's look at the WinForm designer first. The study of the WinForm Designer is helpful for the understanding of WF designer.
1.1 WinForm Designer Design:
Have studied a few days sharpdevelop, a free open source IDE development environment, and has a similar plug-in ideas like eclipse. There is a more complete WinForm designer implementation in this open source IDE. Winform
The IDE relies primarily on the following interfaces and classes to implement. As long as the relevant interfaces and abstractions are implemented. NET Framework will help us implement the WinForm designer. Much like template method. The corresponding interfaces and classes are:
WinForm Designer Structure
Üdesingerhost:
1. Service Management: Service container and service provider
2. Component Management and transaction management
Üisite:
binding components and containers, all services in the designerhost can be obtained by isite (GetService)
Üiserviceprovide
Üidesinger
Provide custom service, design period add menu commands to Component context menu, add component Implementation action
Associating with Icompont in the Initialize method
Toolbox implementation:
Üitoolboxservice
Toolbox services, the primary purpose of which is to store ToolboxItem
How do I populate the toolbox?
To use ToolboxItemFilterAttribute
ADDTOOLBOXENTRIES:LISTBOX.ITEMS.ADD (new Selfhosttoolboxitem (entry)
CategoryNames: Toolbox Category Properties
Addcreator:
One of the Workflowdesignercontrol I think is the application of mediator model
• Select Service
Related Assemblies and CCU containers: Typeprovider
We can down sharpdevelop the source code to see, there is a book specifically introduced this.