Adding Custom Properties Dynamically

In my client module code, how can I dynamically add custom properties to my component? I know I can use addProp(...) in my BeanInfo class, but I do not know how I can add a generated property to the component in the designer. I would also like to keep updating its value in the program.

I would also like to expose these properties so they can be bound to.

Assuming Vision, since you said BeanInfo:
You do this through the DynamicPropertyProvider interface:

and the extension interface for MutableDynamicPropertyProvider.

If you make your base component extend one of the AbstractVision* base classes we do this for you: