
# IExternalFormHolder interface

The `IExternalFormHolder` interface represents the TExternalFormComponent object and holds the [`IExternalForm`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IExternalForm.md) interface.

```csharp
public interface IExternalFormHolder
```

**Namespace:** DXP · **Assembly:** Altium.SDK.Interfaces

## Remarks

For example VCL technology is not compatible with MS C++ toolkit.

Therefore to work with windows in the Altium Designer platform, you use the [`IExternalForm`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IExternalForm.md) interface to have access to windows and manipulate them.

## Methods

| Method | Returns | Description |
| --- | --- | --- |
| [GetParentWindow](#getparentwindow) | `UIntPtr` | This method retrieves the THandle of the parent window that can be used in the [`IExternalForm`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IExternalForm.md) interface. |
| [SetDialogHandle](#setdialoghandle) | `void` | This method sets the dialog handle for this external form. |
| [UpdateCaption](#updatecaption) | `void` |  |

### GetParentWindow

This method retrieves the THandle of the parent window that can be used in the [`IExternalForm`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IExternalForm.md) interface.

```csharp
UIntPtr GetParentWindow();
```

**Returns:** `UIntPtr`

Extension method of `IExternalFormHolderHelper` (`using DXP;`).

### SetDialogHandle

This method sets the dialog handle for this external form.

```csharp
void SetDialogHandle(UIntPtr argHandle);
void SetDialogHandle(object argHandle);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argHandle` | `UIntPtr` | value |

**Returns:** nothing (`void`)

The first overload is an extension method of `IExternalFormHolderHelper` (`using DXP;`) with typed parameters; the second is declared by the interface.

### UpdateCaption

*No description yet.*

```csharp
void UpdateCaption();
```

**Returns:** nothing (`void`)

## Returned by

[ExternalForm.ParentWindow](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/ExternalForm.md#parentwindow)

## Accepted by

[IExternalForm.SetParentWindow](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IExternalForm.md#setparentwindow), [ServerPanelForm.SetParentWindowHolder](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/ServerPanelForm.md#setparentwindowholder)
