---
title: "UserInputController Class"
canonical: https://www.graphicsmill.com/docs/gm5/T_Aurigma_GraphicsMill_WinControls_UserInputController.htm
product: "Graphics Mill 5.5 for .NET"
---

This documentation is for the old version. [Go to the latest Graphics Mill docs](https://www.graphicsmill.com/docs/gm/)

# UserInputController Class
 
This class contains the partial implementation for the [IUserInputController](https://www.graphicsmill.com/docs/gm5/T_Aurigma_GraphicsMill_WinControls_IUserInputController.htm.md) interface.
 
**Namespace:** [Aurigma.GraphicsMill.WinControls](https://www.graphicsmill.com/docs/gm5/N_Aurigma_GraphicsMill_WinControls.htm.md)
 **Assembly:** Aurigma.GraphicsMill.WinControls (in Aurigma.GraphicsMill.WinControls.dll)
 
## Syntax
  
```
Public MustInherit Class UserInputController _Inherits Component _Implements IUserInputController
```
 
```csharp
public abstract class UserInputController : Component, IUserInputController
```
 
## Remarks
  
When you create a custom navigator or rubberband, you can inherit your class from this one, and override its protected members. Note, this class is an abstract one, you cannot instantiate it directly.
 
## Inheritance Hierarchy
  
- [System.Object](http://msdn2.microsoft.com/en-us/e5kfa45b)
    - [System.MarshalByRefObject](http://msdn2.microsoft.com/en-us/w4302s1f)
        - [System.ComponentModel.Component](http://msdn2.microsoft.com/en-us/9wbadbce)
            - Aurigma.GraphicsMill.WinControls.UserInputController
                - [Aurigma.GraphicsMill.WinControls.PanNavigator](https://www.graphicsmill.com/docs/gm5/T_Aurigma_GraphicsMill_WinControls_PanNavigator.htm.md)
                - [Aurigma.GraphicsMill.WinControls.ZoomInNavigator](https://www.graphicsmill.com/docs/gm5/T_Aurigma_GraphicsMill_WinControls_ZoomInNavigator.htm.md)
                - [Aurigma.GraphicsMill.WinControls.ZoomOutNavigator](https://www.graphicsmill.com/docs/gm5/T_Aurigma_GraphicsMill_WinControls_ZoomOutNavigator.htm.md)
                - [Aurigma.GraphicsMill.WinControls.RectangleController](https://www.graphicsmill.com/docs/gm5/T_Aurigma_GraphicsMill_WinControls_RectangleController.htm.md)
                - [Aurigma.GraphicsMill.WinControls.VObjectsRubberband](https://www.graphicsmill.com/docs/gm5/T_Aurigma_GraphicsMill_WinControls_VObjectsRubberband.htm.md)
 
## Thread Safety
 Static members of this type are safe for multi-threaded operations. Instance members of this type are not safe for multi-threaded operations.
   
## See Also

### Reference

- [UserInputController Members](https://www.graphicsmill.com/docs/gm5/AllMembers_T_Aurigma_GraphicsMill_WinControls_UserInputController.htm.md)
- [Aurigma.GraphicsMill.WinControls Namespace](https://www.graphicsmill.com/docs/gm5/N_Aurigma_GraphicsMill_WinControls.htm.md)

### Manual

- [Creating Custom Navigators and Rubberbands (Windows Forms)](https://www.graphicsmill.com/docs/gm5/CustomNavigatorsandRubberbandsWindowsForms.htm.md)
