# FactoryBase class

Namespace: [Rhino.UI.Controls](https://developer.rhino3d.com/api/rhinocommon/namespace/rhino.ui.controls.md) · Assembly: [RhinoCommon](https://developer.rhino3d.com/api/rhinocommon/assembly/rhinocommon.md)

```cs
public abstract class FactoryBase
```

Base class for CollapsibleSection and ViewModel factories used by the RDK UI

**Derived types:** [CollapsibleSectionImpl.Factory](https://developer.rhino3d.com/api/rhinocommon/type/rhino.ui.controls.collapsiblesectionimpl.factory.md), [InternalRdkViewModelFactory](https://developer.rhino3d.com/api/rhinocommon/type/rhino.ui.controls.internalrdkviewmodelfactory.md)

## Finalizer

- [~FactoryBase](https://developer.rhino3d.com/api/rhinocommon/type/rhino.ui.controls.factorybase/finalize.md): Finalizer

## Methods

- [Get](https://developer.rhino3d.com/api/rhinocommon/type/rhino.ui.controls.factorybase/get.md): Override this method to return a new instance of your class for the given ID
- [Register](https://developer.rhino3d.com/api/rhinocommon/type/rhino.ui.controls.factorybase/register.md): (2 overloads, static) Call this function during startup of current assembly to load classes with factory creation support are registed
