# CreateEditorWithContext(Object[], Object, Type)

> Make a custom editor for targetObject or targetObjects with a context object.

## Definition

* **Type:** Method
* **Namespace:** [UnityEditor](/engine/6000.0/script-reference/unityeditor.md)
* **Assembly:** UnityEditor

```csharp
public static Editor CreateEditorWithContext(Object[] targetObjects, Object context, Type editorType)
```

### Parameters

**** (\[Object\[]]\(/engine/6000.0/script-reference/unityengine/object)): **** (\[Object]\(/engine/6000.0/script-reference/unityengine/object)): **** (\[Type]\(https\://learn.microsoft.com/dotnet/api/system.type)):&#x20;

### Returns

| Type                                                            | Description |
| --------------------------------------------------------------- | ----------- |
| [Editor](/engine/6000.0/script-reference/unityeditor/editor.md) |             |

### Remarks

This method is identical to [Editor.CreateEditor](/engine/6000.0/script-reference/unityeditor/editor/createeditor.md) except that the [SerializedObject](/engine/6000.0/script-reference/unityeditor/serializedobject.md) will be created using the context object passed as parameter. This context object will be used to store and retrieve the value for ExposedReference types declared on the [SerializedObject](/engine/6000.0/script-reference/unityeditor/serializedobject.md).
