The following tables list the members exposed by ControlTypeEditor.
Public Properties
| Name | Description |
| IsDropDownResizable | (Inherited from System.Drawing.Design.UITypeEditor) |
Top
Protected Properties
| Name | Description |
| xTypesSupported |
xTypesSupported is a list of Types supported by the drop list.
The drop list will look through the page's component list and select any
object whose classtype matches or is inherited from the types in this list.
For example, to include all WebControls, you can simply add the WebControl type here.
To add to this list, you must override DefineSupportedTypes and
call AddSupportedType (which validates your entry.)
|
Top
Public Methods
| Name | Description |
| EditValue | Overloaded.
EditValue must be overridden from UITypeEditor to install a control that appears in the drop down.
For UITypeEditorEditStyle.DropDown, here is the general procedure:
1. Get the Edit Service from pProvider.GetService(typeof(IWindowsFormsEditorService)).
It contains methods to run the DropDown and Forms interfaces.
2. Get a Window control instance that reflects the UI you want. In this case, its a ListBox.
If you wanted multiple controls, consider something like the Panel class and add controls to its Controls list.
3. We want the ListBox to close on a Click event much like boolean and enum dropdowns do.
So we set up a Click event handler that calls CloseDropDown on the Edit Service.
4. Add data to the ListBox.
5. Set the initial value of the list. pValue contains that value.
6. Let the Edit Service open and manage the DropDown interface.
7. Return the value from the list.
(Inherited from DropDownListTypeEditor) |
| GetEditStyle | Overloaded.
GetEditStyle must be overridden for any UITypeEditor.
In this case, we are using a DropDown style.
(Inherited from DropDownListTypeEditor) |
| GetPaintValueSupported | Overloaded. (Inherited from System.Drawing.Design.UITypeEditor) |
| PaintValue | Overloaded. (Inherited from System.Drawing.Design.UITypeEditor) |
Top
Protected Methods
| Name | Description |
| AddSupportedType |
AddSupportedType adds a type into the xTypesSupported list. Call it from
DefineSupportedTypes. All subclasses of any type added are automatically supported.
|
| ClearSupportedTypes |
Clear supported types.
|
| DefineSupportedTypes |
DefineSupportedTypes must be overridden. Use it to call AddSupportedType with Control type that you support.
Remember that all subclasses of any type added are automatically supported.
For example, if you want to include all HtmlControls, call AddSupportedTypes(typeof(HtmlControl)).
You can use pContext.Instance to get a hold of the control whose property is being edited.
|
| FillInList | Overridden.
FillInList box gathers the controls found on the page and after filtering out those
not in xTypesSupported, adds their ClientID to the list box.
The ITypeDescriptorContext, pContext, contains the components list of the page.
|
| FillInListWithControls |
FillInListWithControls does most of the work of FillInList.
|
| List_Click |
List_Click is a click event handler for the ListBox. We want the have the list
close when the user clicks, just like the Enum and Bool types do in their UITypeEditors.
(Inherited from DropDownListTypeEditor) |
Top
See Also