Provides metadata for a component.
package com.ms.wfc.core
public class ClassInfo
implements IClassInfo
ClassInfo provides design-time information about a component class, including the component's properties, events, and attributes. This information is then available to be browsed at run time.
To use ClassInfo, a component class provides a public static inner class named ClassInfo, which typically extends the ClassInfo of the component class's superclass. This allows the component to inherit the metadata of the superclass.
Note Although a ClassInfo is not required to extend the superclass's ClassInfo, it must implement the IClassInfo interface.
The following example shows a portion of the ClassInfo of the Edit control:
public class Edit extends Control { ... // Members of class Edit. public static class ClassInfo extends Control.ClassInfo { // Define the properties. public static final PropertyInfo autoSize = new PropertyInfo( Edit.class, "autoSize", Boolean.TYPE, CategoryAttribute.Behavior, DefaultValueAttribute.TRUE, new DescriptionAttribute("Enables automatic resizing.")); public static final PropertyInfo backColor = new PropertyInfo(com.ms.wfc.ui.Control.ClassInfo.backColor, DefaultValueAttribute.COLOR_WINDOW); // Define the events. public static final EventInfo textChanged = new EventInfo( Edit.class,"textChanged", EventHandler.class, CategoryAttribute.Behavior, // Occurs when the text property of this control changes new DescriptionAttribute); // Specify the default event. public String getDefaultEventName() { return "textChanged"; } // Add the properties. public void getProperties(IProperties props) { super.getProperties(props); props.add(autoSize); props.add(backColor); } // Add the events. public void getEvents(IEvents events) { super.getEvents(events); events.add(textChanged); } } }
See Also ComponentInfo